【发布时间】:2018-09-02 01:44:21
【问题描述】:
我目前正在使用 CodeIgniter3 应用程序,并且已经为标准的类似博客的系统构建了基础。
结构是标准 CI - 用户请求页面,页面加载控制器方法,控制器方法从其模型调用任何相关的 DB 函数,然后加载视图。
但是,我希望也可以通过 API 访问此视图。因此,我不会将 $data 数组中的信息填充到 HTML 中,而是将其传递给不同的视图,该视图将输出 JSON 结果。
我想编写两个不同的控制器将是一个糟糕的步骤 - 有没有我可以做的路由,或者允许控制器识别 api 端点已被命中的任何标准做法(例如目录 'api'在访问路径中),然后基于此加载不同的视图?
【问题讨论】:
-
如果你想要一个干净的方法,你应该考虑为 github.com/chriskacerguis/codeigniter-restserver 使用一个 rest 库,但这并不会改变你需要 2 个不同的控制器这一事实
-
很公平,所以如果我们考虑我为控制器/api/ 设置一个子目录并在其中插入一个用户控制器,我有什么方法可以访问控制器/用户下的方法。 php ?
-
这背后的目的是什么?如果你有这么多冗余代码显示一个例子 - 也许这是一个问题,因为你的控制器中有属于模型的代码 - 我不确定;)
标签: php codeigniter codeigniter-3