问题标签 [codeigniter-routing]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 在 codeigniter 中重写 URL
如何完全避免使用处理 URL 的 Codeigniter 方法并使用常规方式?
而不是[root_url]/index.php/controller/view/data
,我怎么能得到[root_url]/view.php?variable=value&variable=value etc ...
。
如果重要的话,我会在本地而不是在网络上运行和测试该站点。
mysql - Codeigniter:如何创建数据库驱动的 URI?
我的路线是语言驱动的,看起来像这样mydomain.com/en
但我有我希望在语言mydomain.com/jp/the-slug-of-a-japanese-page之后的 URI 中的数据库内容
我有一个名为posts的表,它包含标题、slug 和语言的内容行,但我不完全了解如何编辑我的主控制器以检查 URI 是否来自数据库。
这是我的家庭控制器方法。
php - 嵌套还是不嵌套?MVC 控制器 (CodeIgniter)
背景:
我在理解如何在 MVC 架构中最好地使用控制器时遇到了一些麻烦。
我有一个遵循此 URL 方案的 webapp:
/
- 主要指标/static-page
- 静态页面/categories
- 特定类别的索引/categories/users
- 特定类别用户的索引/categories/users/id#/user-name
- 特定类别的特定用户/categories/event-type-A
与特定类别相关的事件索引/categories/event-type-A/id#/event-name
- 特定类别的特定事件/categories/event-type-B
与特定类别相关的事件索引/categories/event-type-B/id#/event-name
- 特定类别的特定事件
*注意:此 URL 结构类似于 StackOverflow 的,event-name
如果存在格式错误的 URL(错误的 s)会自动更正id#
。
问题:
由于categories
、users
和event-type
s 每个都有与之相关的独特功能(即编辑用户、操作事件等),它们都是自己的控制器(对吗?)。由于event-type-A
和event-type-B
非常相似,它们共享从一个events
类扩展的通用功能。
您如何建议我组织我的控制器,使其遵循 OOP 和 MVC 设计中的“标准实践”?
我目前有一个Pages
用于我的静态页面的类,并且我期望有一个categories
类调用一个users
类,event-type-A
并且event-type-B
类(如上所述)是一个events
类的扩展......但是从这里我不确定如何最好继续。
任何简单/伪代码示例将不胜感激。
附加信息:
仅供参考:我正在使用 PHP/MySQL。我一直在尝试通过编写自己的框架来学习 MVC,但最近切换到了 CodeIgniter。话虽如此,CodeIgniter 特定的解决方案或通用的 MVC 解决方案就足够了。
更新:
正如下面Ako 提到的,我绝对可以将它们events
组合成一个控制器,然后从中type
生成两个。我只是对如何实际设置每个控制器(定义哪些方法等)以使它们正常工作感到困惑。
codeigniter - Codeigniter 组织控制器结构
让我们以一个小型社交网站为例。模块之一也是测验。测验模块具有以下部分:
我想知道在这种情况下最好的方法是什么。一种选择是为每个模块部分创建另一个控制器。
另一种方法是为具有许多功能的整个模块创建单个控制器。没有一个选项是好的。在第一种方式中,这可能意味着我的控制器文件夹中有 30 多个控制器(请记住,测验只是众多模块中的一个)。第二个选项不行,因为单个文件将具有许多功能,并且不容易扫描给开发人员。
我也在考虑创建许多控制器,但将它们组织到子文件夹中。无论如何,condeigniter 没有修改就没有这个选项。
天呐!
codeigniter - Codeigniter URL:如何在 URL 中显示 id 和文章标题
请看以下链接结构
在上面的链接中,10672712
我猜是问题 ID,因为如果您检查以下链接,您将到达与上面相同的位置:
现在,如果您使用上面的链接,那么您会注意到在浏览器的地址栏中,该链接会自动在问题 ID 之后添加问题标题(作为 slug),并且它看起来就像上面的第一个链接一样。
我正在尝试使用 Codeigniter 创建一个基于文章的网站。要显示特定文章,我有一个如下所示的控制器:
我的模型:
如果你点击这个->localhost/my_base_url/my_controller/my_funtion/article_id
那么我的文章就会出现。现在我想要实现的是,如果有人点击localhost/my_base_url/my_controller/my_funtion/article_id
我想在 article_id 之后自动将文章标题添加为 slug。(就像我上面给出的示例一样)
你能告诉我该怎么做吗?
谢谢:)
PS 在我的数据库表中,我有一个名为 的列article_slug
,其中我将文章标题存储为 slug(例如:voting-system-like-stackoverflow)。
codeigniter - Codeigniter URI 路由
我已经检查了 codeigniter 用户指南,但我没有幸运地解决我的问题。
我在本地主机上创建了一个网页。
我去的http://localhost/webpage/
时候就没事了。它将转到默认控制器。
我的默认控制器是Homepage
并且有名为的方法index
,guarantee
并且about
当我转到我的 routes.php 时,我添加了这个:
然后尝试访问它http://localhost/webpage/guarantee
并http://localhost/webpage/about_us
显示 ERROR 404
但是当我这样做时,$route['default_controller'] = "homepage/guarantee";
将显示保证页面。
谁能帮我解决这个问题?谢谢。
php - 使用可变段构建 Codeigniter URL
我已经在 CI 用户指南和 Stackoverflow 上搜索了我的问题的解决方案,但找不到。所以,这是我的问题。
我需要建立 SEO 友好的 URL。我有一个名为“Outlets”的控制器,我需要生成的视图将具有类似 http://www.mysite.com/[city]/[area]/[outlet-name] 的 URL 结构。
细分 city 和 area 是它们各自表中的字段,而 outlet_name 是表“Outlets”中的字段。
我能够生成像http://www.mysite.com/outlets/123这样的 URL,但是如何将城市和地区名称添加到 URL。
php - 如何在不使用参数的情况下使用 MVC 加载页面?
我目前有一个网站,我还没有实现 MVC,但正在测试水域,看看它是否是我想做的事情。我在网上环顾四周,并没有找到我的问题的明确答案。我有点理解MVC的概念;但是,我想知道如何使用 MVC 处理用户制作的页面。
目前,我主要根据参数加载页面。用户可以添加自己的报价并将其插入数据库。然后,为了显示他们添加的作者的引语,用户将访问例如 mysite.com/author.php?quotee=Randy+Pausch。
理想情况下,我想转换我的网站,使 URL 看起来像 mysite.com/authors/Randy-Rausch 或类似的东西。
这是我对 MVC 不了解的地方。我是否需要以某种方式为每个作者创建一个视图,如果需要,我该怎么做?还是 URL 的最后一部分实际上是一个参数,即使它不使用“?quotee=Some+Author”语法?我觉得我不理解 MVC 的一个基本部分。
如果有人能为我的问题提供一个好的方法或一个好的教程,我将不胜感激。我看过关于静态页面的教程,但想要一个基于可由站点用户创建的页面的教程。
谢谢你的帮助!
php - CodeIgniter 基于 URL 段
我希望我的 URL 看起来像:www.domain.com/controller/view/args而不是index.php?/controller/view/args。实际上,我从不希望 url "index.php?..." 进行验证。谁能给我一个有关如何强制执行此行为的提示,因为当我这样做时:A)redirect()或B)手动输入'index.php'“......” url变成了那个丑陋的模式。
这是我的 .htaccess 文件(我不知道我是否需要这个文件,只是从互联网上复制+粘贴):
这是我的 config.php:
这就是改变行为的原因:
codeigniter - codeigniter 变量段
我在使用 codeigniter 段时遇到问题。
我正在寻找这样的东西,我的控制器在哪里contacts
,动作是list
:
这样我可以混合我的参数,它们不必按照特定的顺序,或者我可以把它们放在一起,例如:
我怎么得到这个,因为我看到它的方式,我只能请求这样一个片段:
但是段 3 可以带有偏移值或极限值,或者完全不同的东西。
非常感激