我尝试编写订单系统,这是我的第一个蛋糕项目。
我有一个订单,一个用户和一个useraddress。
//Order model
public $belongsTo = array(
'User' => array(
'className' => 'User'
));
//User model
public $hasOne = array(
'Useradr' => array(
'className' => 'Useradr',
'foreignKey' => 'user_id',
'order' => ''
)
);
//maybe not necessary Useradr model
public $belongsTo = 'User';
现在我想在添加/编辑优惠券时访问useraddress。
我可以在凭证编辑视图中访问用户:
echo $this->Form->input('User.email',array(
'label' => 'Email',
));
但不是Useraddress。我做错了什么?
非常感谢!
朱利
答案 0 :(得分:0)
您必须使用正确的型号前缀。
echo $this->Form->input('Useradr.some_field',array(
'label' => 'Some Field',
));
我建议您执行blog tutorial而不是盲目编码。阅读the conventions也是一个好主意。
进一步使用Useradr是一个非常糟糕的名称,更好的是UserAddress。由于多种原因,缩写很糟糕。首先,如果你不知道它们是什么意思,那么它们很难猜测,而且非常喜欢它们也不喜欢它们,并且可能搞砸奇异/复数的情况。阅读Clean Code这本关于如何编写干净代码的非常好的书。