如何创建一个视图页面来保存cakePHP中的两个对象

时间:2011-03-10 04:24:01

标签: cakephp

我有两个型号

  

地址:FIRSTLINE,二线   接触:名字,姓氏

和数据库表分别地址和联系。我必须创建一个视图页面,它应该显示如下格式

名字: 姓氏:

地址: 第一行: 第二行:

下一步{此按钮进入下一页}

如何创建此视图。请用代码解释我 以及如何在单击下一步按钮后保存会话中的对象。以及要编写的控制器是什么。用代码解释我。

1 个答案:

答案 0 :(得分:0)

address_controller.php

class AddressController extends AppController {   
 var $uses = array('Address', 'Contact');

以上将允许您从地址控制器访问联系人模型

然后您可以将add函数中的数据保存到两个表中

$addressData = array(
    'id'=>'', 
    'firstline'=>$this->data['Address']['firstline'], 
    'secondline'=>$this->data['Address']['secondline'], 
    'contact_id'=>$this->Auth->user('id')
);

然后使用以下代码保存数据....

$this->Address->save($addressData);

我建议您检查以确保实际保存的数据,然后继续执行Contact模型的常规保存方法。

如果您已经为地址和联系模式创建了add.ctp,那么您只需转到您的views-> address-> add.ctp并复制表单字段并将其粘贴到视图中 - &gt ; contact-> add.ctp表单。

没有看到任何代码,很难准确说出你的字段是什么,但应该看起来像这样:

<input name="data[Contact][firstname]">
<input name="data[Contact][lastname]">
<input name="data[Address][firstline]">
<input name="data[Address][secondline]">