2012-02-09 44 views
0

如何在同一个数据库中将数据从一个表单发布到两个数据库表?这两个表中的字段具有相同的名称。CakePHP将数据从一个表单复制到两个数据库表

比如我有如下表:

a {id, type, name, age} 
b{id,a_id,type,name} 

所以基本上我想有以下值被张贴到两个表:类型和名称。

其中b中的a_id是a的id。

我正在使用cakephph。任何人都可以请帮忙。

谢谢。

,如果你想从表中的值,然后使用它像
+0

您可能只需要操纵你的数据预存。只需将值复制到单独的数据数组即可保存。 – 2012-02-09 09:23:29

回答

0

比方说,你有两个型号称为商店和产品,而且如果是相关的也没关系或不。

在您查看你可以这样做:

echo $this->Form->create('Store');  
echo $this->Form->input('Store.name');  
echo $this->Form->input('Store.location');  
echo $this->Form->input('Product.name');  
echo $this->Form->input('Product.type');  
echo $this->Form->end('Save'); 

并在您StoresController你应该这样做,以节省模型的数据:

// CakePHP 1.3  
$this->Store->save($this->data['Store']); 
$this->Product->save($this->data['Product']); 

// CakePHP 2.0 
$this->Store->save($this->request->data['Store']); 
$this->Product->save($this->request->data['Product']); 

如果他们相关型号,您可以通过一个简单的电话就可以省去两者:

$this->Product->saveAll($this->data); // CakePHP 1.3 

$this->Product->saveAssociated($this->request->data); // CakePHP 2.0 

不要忘记检查文档:

CakePHP的1.3 - http://book.cakephp.org/1.3/en/view/1031/Saving-Your-Data

CakePHP的2.0 - http://book.cakephp.org/2.0/en/models/saving-your-data.html#model-saveassociated-array-data-null-array-options-array

0

..

a.type,a.name,a.age如果你想从表中获取的值B,则

使用它像..

b.a_id,b.type,b.name,b.age

相关问题