Chr*_*len 2 forms validation cakephp
我有一个包含以下字段的表单:
接下来是(最多)十个名称/电子邮件字段,就像这样
firstName,lastName和emailAddress字段将保存到'referrals'表中,但10个名称/电子邮件对将进入'friends'表,其中包含外键refferal_id.
通常我使用cakephp'automagic'表单,并在模型中设置我的验证,并执行$this->model->save();如果它失败我退回我的模型验证规则,错误消息得到spat回到我的表单html.没问题.
我怎么能为TWO表做这个呢?我认为自动化的东西不是可行的方法,但我觉得没有它会失去很多,例如模型中的验证和自定义错误消息.
有幸福的媒介吗?我很擅长蛋糕,所以我想知道是否有一种方法可以使用多个表格的自动化.
参见http://book.cakephp.org/view/84/Saving-Related-Model-Data-hasOne-hasMany-belongsTo
在推荐模型中创建关系:
var $hasMany = array('Friend');
Run Code Online (Sandbox Code Playgroud)
基本上,请确保正确命名字段,例如
echo $form->create('Referral');
echo $form->input('first_name');
echo $form->input('last_name');
echo $form->input('email');
foreach (range(0,9) as $index) {
echo $form->input('Friend.'.$index.'.name');
echo $form->input('Friend.'.$index.'.email');
}
echo $form->end();
Run Code Online (Sandbox Code Playgroud)
在您的推荐控制器中:
function add() {
if(!empty($this->data)) {
$this->Referral->saveAll($this->data, array('validate'=>'first'));
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3238 次 |
| 最近记录: |