我试图根据2个字段在我的数据库中查找一个模型,如果不存在,就创建一个包含这两个值的新模型。我尝试使用firstOrNew
方法来实现此目标:
$store = Store::firstOrNew(array('ext_hash' => $ext_hash, 'ext_type_id' => EXT_TYPE_ID));
然而,这段代码会抛出一个
MassAssignmentException
异常。避免这个异常的唯一方法是在类级别上分配
fillable
属性吗?根据文档,我应该能够在实例级别上分配 fillable
属性,而不是整个类,但是我应该怎么做呢?这是
Store
模型的代码:<?php
use Illuminate\Database\Eloquent\SoftDeletingTrait;
class Store extends Eloquent{
use SoftDeletingTrait;
public function products(){
return $this->hasMany('Product');
}
public function faqs(){
return $this->hasMany('ProductFaq');
}
public function customer_questions(){
return $this->hasMany('CustomerQuestion');
}
public function users(){
return $this->hasMany('User');
}
}