ORM::factory('foo') 设置在哪里?

Posted

技术标签:

【中文标题】ORM::factory(\'foo\') 设置在哪里?【英文标题】:Where is ORM::factory('foo') set?ORM::factory('foo') 设置在哪里? 【发布时间】:2015-12-04 19:47:19 【问题描述】:

来自http://dev.morgan.ly/kohana/v3.3/index.php/guide/orm-rest/basics:

// Use factory pattern
$member = ORM::factory('member');

// Simply create new object
$member = new Model_Member;

人们在哪里设置ORM::factory('member'),以便他们可以通过将member 传递给ORM::factory 来访问Model_Member

【问题讨论】:

你应该先阅读这个en.wikipedia.org/wiki/Factory_method_pattern 【参考方案1】:

您无需在任何地方“设置”配置。唯一需要的是Model_Member 类在类自动加载器可以找到的位置。这通常意味着它应该在模块的classes 文件夹中,然后为类名称中的任何下划线添加目录。例如,Some_Long_Class_Name 可以被自动加载器在APP_PATH.'/classes/some/long/class/name.php' 中找到

或者在你的情况下:APP_PATH.'/classes/model/member.php' (Kohana

在 Kohana v3.3+ 中,文件夹和文件名必须与类定义中的字母大小写完全匹配:Model_Member => APP_PATH.'/classes/Model/Member.php'

【讨论】:

以上是关于ORM::factory('foo') 设置在哪里?的主要内容,如果未能解决你的问题,请参考以下文章

Kohana 3 ORM:构造函数“加载后”

Kohana ORM - 我该怎么做?

Kohana ORM 的订单结果

KOHANA:ORM + MySQL 找不到表

Kohana 3 ORM检索最后一个插入ID

如何判断头文件包含在哪里?