我在CakePHP中有一个没有表的模型,名为Upload。我在这个模型中得到了一个名为source_id的字段的验证。

我有一个表单可以构建一个漂亮的$ this-data,给我一个格式良好的集合,包括:

$this->data['Upload']['source_id']

但是,我设置的验证规则似乎根本没有运行。我从另一个模型中复制了这个验证规则,它确实有效:所以我相信它有效:

var $validate = array(
        'source_id' => array(
        rule' => 'numeric',
        'required' => true,
        'allowEmpty' => false,
        'message' => 'Error!.'
    )
);

您是否可以验证缺少数据库表的模型的字段?

表单使用Upload模型,并提交给另一个控制器操作方法。

CakePHP 1.2,PHP / MySQL 5,XAMPP。

有帮助吗?

解决方案

我很蠢。您必须使用save()或

触发验证检查
$this->Upload->set($this->data);
$this->Upload->validates();

立即工作。

其他提示

您还可以通过设置$ _schema数组来伪造数据库结构,如下所示:

var $useTable = false;

var 

您还可以通过设置$ _schema数组来伪造数据库结构,如下所示:

<*>schema = array( 'name' =>array('type'=>'string', 'length'=>100), 'email' =>array('type'=>'string', 'length'=>255), 'phone' =>array('type'=>'string', 'length'=>20), 'subject' =>array('type'=>'string', 'length'=>255), 'message' =>array('type'=>'text') );
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top