如何将数据从一个表单发布到同一数据库中的两个数据库表?其中两个表中的字段具有相同的名称。
例如,我有以下表格:
a {id, type, name, age}
b{id,a_id,type,name}
所以基本上我试图将以下值发布到两个表:type和name。
其中b中的a_id是a的。
我正在使用cakephph。任何人都可以帮忙。
感谢。
答案 0 :(得分:0)
如果你想从表a中获取值,那么就像使用它一样..
a.type,a.name,a.age
如果你想从表b中获取值,那就像使用它一样..
b.a_id,b.type,b.name,b.age
答案 1 :(得分:0)
假设您有两个名为Store and Product的模型,如果它们相关与否则无关紧要。
在查看上,您可以执行此操作:
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