Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用CakePHP 3在多模型表单中设置默认字段?_Php_Forms_Model_Cakephp 3.0 - Fatal编程技术网

如何使用CakePHP 3在多模型表单中设置默认字段?

如何使用CakePHP 3在多模型表单中设置默认字段?,php,forms,model,cakephp-3.0,Php,Forms,Model,Cakephp 3.0,我有一个表单,我发送了两个模型,用于添加来自两个不同表的信息 地点和事件。当事件位于一个不在数据库中的位置时,我让用户放置要添加的位置信息。这对我的Add事件很有效 现在我想为事件创建编辑版本,但数据中没有默认值 我的表格如下: <?php echo $this->Form->create($event); echo $this->Form->input('Place.address'); echo $this->Form->input('Place.l

我有一个表单,我发送了两个模型,用于添加来自两个不同表的信息

地点和事件。当事件位于一个不在数据库中的位置时,我让用户放置要添加的位置信息。这对我的Add事件很有效

现在我想为事件创建编辑版本,但数据中没有默认值

我的表格如下:

<?php
echo $this->Form->create($event);
echo $this->Form->input('Place.address');
echo $this->Form->input('Place.lat');
echo $this->Form->input('Place.lon');
echo $this->Form->input('Event.place_id');
echo $this->Form->button(__('Validar'));
echo $this->Form->end();
?>
通常,对于一个模型,所有字段的默认值都由数据库填充

如何使用两个模型进行默认设置

我希望避免每个字段的默认=>$place->place\u id选项


谢谢你

你的问题不清楚。为什么要在编辑表单中创建新实体? 为什么不在sql中设置默认值呢


此外,您应该关联模型并使用关联。一事一处。place belong要了解更多信息,请参阅本书。

我的客户希望创建新的场所。如果有一个活动以相同的形式改变了位置,我建议使用两种形式,但他坚持使用一种。表有它们的关联。使用'default'=>$event->place_id,我得到了我需要的东西,但我认为并不是为所有字段设置所有默认值。我接受想法。将来可能还需要以一种形式添加类别
    $place = $this->Places->newEntity();
    $event = $this->Events->newEntity();

    if ($this->request->is('post')) {
        $place = $this->Places->patchEntity($place, $this->request->data['Place']);
        $event = $this->Events->patchEntity($event, $this->request->data['Event']);

    $this->set('place', $place);
    $this->set('event', $event);