php - 将 codeigniter 2.0 与 Datamapper 一起使用时类名冲突?

标签 php database codeigniter codeigniter-2 codeigniter-datamapper

我在 PHP 5.3 中使用 CI2.0

我刚开始使用“Datamapper ORM”,它非常棒!!然而,他们是关于类名的一个大问题

我有一个名为“users”的数据库表,所以我的 dm 模型是“user”并且我还有一个同名的 Controller “user”?

所以在“用户” Controller 中使用“用户”模型是不可能的!!

解决这个问题的最佳方法是什么?

非常感谢

最好的问候

最佳答案

CodeIgniter 的缺点之一是您不能将 Controller 、模型或库命名为同一事物。这主要是一个 PHP 问题,因为显然你不能命名任何相同的东西,但可以通过两种方式避免。

  1. PHP 命名空间 - 无能为力,它们仅适用于 PHP 5.3,如果实现它们,90% 的社区都会启动。
  2. Controller Prefixes - 这是我很想添加的东西,但是......它会破坏每个人的东西。我们至少要等到 2.1 才会有这么大的变化。

现在我只能建议您仔细命名您的模型和库。

Controller - 用户
图书馆 - 用户
模型 - 用户模型 |用户_m

这很烦人,但现在只是其中之一。

关于php - 将 codeigniter 2.0 与 Datamapper 一起使用时类名冲突?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5176688/

相关文章:

php - 我想改变多维数组的键

database - 使用 'Partial Index' 的优点和缺点是什么?

database - 如何将 Cloudant 数据库备份到 COS?

php - Codeigniter文件上传类中的多语言错误

php - 用php忽略隐藏文件

php - 为什么我的查询总是返回表中第一张图像的路径?

php - 使用户输入对数据库安全的最佳功能是什么?

php - 日期和当前时间之间的时差?

php - 无法将数据库中的字段加载到组合框

codeigniter - codeigniter 的 session 系统如何与 PHP 内置的 $_SESSION 分开?