0

根据手册,我应该能够做到这一点,即将 Model 保留为 null

<?php
echo $this->Form->create(null, array('url' => '/recipes/add'));
// or
echo $this->Form->create(null, array(
    'url' => array('controller' => 'recipes', 'action' => 'add')
));

但实际上,我收到错误说缺少数据库表?为什么?

我有我的模型,它没有直接映射到任何表。为什么我不能将其保留为空?像这样的东西:

<?php echo $this->Form->create(null,array('url' => array('my_account','action' => 'change_avatar'),'type' => 'file'));?>
4

2 回答 2

1

尝试传递false模型而不是null

<?php
echo $this->Form->create(false, array('url' => '/recipes/add'));
// or
echo $this->Form->create(false, array(
    'url' => array('controller' => 'recipes', 'action' => 'add')
));

手册

您也可以为 $model 传递 false。这会将您的表单数据放入数组中:$this->request->data(而不是在子数组中:$this->request->data['Model'])。这对于可能不代表数据库中任何内容的简短表单非常方便。

于 2012-08-27T21:48:25.760 回答
0

在您的数据库中创建一个名称为recipes的表。表格中提交的日期将保存在食谱表中。

于 2012-08-27T15:42:37.277 回答