我正在从 Cake 1.3 升级到最新的 Cake 2。
我曾经从 App Component 访问用户模型:
$this->Auth->userModel->
然而,那个领域已经不存在了。
有替代方案吗?
我也试过
App::uses('User', 'Model');
$user = new User();
但我得到了错误
Class 'AppModel' not found
访问用户模型的任何替代方法?
我正在从 Cake 1.3 升级到最新的 Cake 2。
我曾经从 App Component 访问用户模型:
$this->Auth->userModel->
然而,那个领域已经不存在了。
有替代方案吗?
我也试过
App::uses('User', 'Model');
$user = new User();
但我得到了错误
Class 'AppModel' not found
访问用户模型的任何替代方法?
通过访问用户(或任何)模型,您究竟想做什么?
如果在控制器中,您可以添加带有控制器$uses
变量的模型:
public $uses = array('User');
您还可以通过“跳过模型关联”来访问任何模型。例如,如果您在控制器的属性中并且UsersController
希望在控制器的属性中使用Costume
模型,您可以执行以下操作:User hasMany Costume
Costume
$uses
$this->User->Costume->find();
模型协会的存在是强制性的,否则它将不起作用。这是可能的,因为 User 模型与它的任何关联模型都有内部关联。
由于组件包装了控制器,因此您也应该能够在此处执行此操作,或者应该从您可以调用的地方引用对控制器的引用:User->Costume->find();
但是在这种情况下,Component
您最好将数据传递给它而Controller
不是尝试从中调用模型.