我是laravel的新手。我想在我的模型中覆盖构造方法,但是,当我尝试在模型中使用构造方法时,它会返回一个错误Call to undefined method Illuminate\Database\Query\Builder::construct()
使用__construct
方法的目的是我想动态使用数据库表。
有什么问题?怎么可以避免这个错误?
模型
class Custom extends Model
{
protected $guarded = ['id', 'ct'];
const UPDATED_AT = null;
const CREATED_AT = 'ct';
public function __construct(string $tableName = null, array $attributes = []) {
$this->setTable($tableName);
parent::construct($attributes);
}
}
控制器
$custom = new Custom($tableName);
$result = $custom->create($data);
答案 0 :(得分:4)
您可能意味着使用parent::__construct($attributes);
代替parent::construct($attributes);
。没有construct
方法,就像错误消息所说的那样。