我有一张postgres表,其中有一些"默认" date_created等字段,默认自动接收current_timestamp。
或ID字段,它从数据库中定义的序列中获取值。
在生成INSERT语句时,告诉ORM模块不包含这两个字段的语法是什么(如果可能)?
答案 0 :(得分:2)
您可以使用函数作为第二个参数来删除字段:
$this->copyfrom('POST',function($val) {
unset($val['ID']);
unset($val['date_created']);
return $val
});
或仅复制POST数组中允许的字段:
$this->copyfrom('POST',function($val) {
return array_intersect_key($val, array_flip(array('name','age')));
});
答案 1 :(得分:0)
假设您使用HTML表单将新记录添加到表格中,请按照以下步骤操作;
使用类似下面的函数创建模型
public function add() {
$this->copyFrom ( 'POST' );
$this->save ();
}
创建将表单链接到此函数的路由