我重寫了create()
Eloquent方法,但是當我嘗試調用它時,我得到Cannot make static method Illuminate\\Database\\Eloquent\\Model::create() non static in class MyModel
。擴展/重寫Eloquent創建方法 - 不能使靜態方法非靜態
我稱之爲create()
方法是這樣的:
$f = new MyModel();
$f->create([
'post_type_id' => 1,
'to_user_id' => Input::get('toUser'),
'from_user_id' => 10,
'message' => Input::get('message')
]);
而在MyModel
類我有這樣的:
public function create($data) {
if (!Namespace\Auth::isAuthed())
throw new Exception("You can not create a post as a guest.");
parent::create($data);
}
爲什麼不這項工作?我應該改變什麼才能使它工作?
我給這一個+1,爲 「重新思考」 的聲明!這個邏輯不屬於MyModel類。 – DutGRIFF