我正在使用Laravel 4.x.是否可以通过Input:all()
而不是设置对象的各个属性,然后调用save()
?
我的表单字段类似于命名约定中的db字段。
答案 0 :(得分:1)
从laravel文档中您可以选择 -
$user = User::create(array('name' => 'John'));
// Retrieve the user by the attributes, or create it if it doesn't exist...
$user = User::firstOrCreate(array('name' => 'John'));
// Retrieve the user by the attributes, or instantiate a new instance...
$user = User::firstOrNew(array('name' => 'John'));
您可以使用以下所有这些
$user = User::create(Input::all());
// Retrieve the user by the attributes, or create it if it doesn't exist...
$user = User::firstOrCreate(Input::all());
// Retrieve the user by the attributes, or instantiate a new instance...
$user = User::firstOrNew(Input::all());
但是您需要注意表单字段名称和数据库列名称是相同的。
此外,您还需要在模型上寻找$ guard。那些字段无法以这种方式插入。
答案 1 :(得分:0)
您可以使用Model::create(Input::all())
为此,您需要在模型中指定受保护的$fillable
数组,该数组指定可指定质量的字段。
protected $fillable=array('column1','cloumn2');