Laravel 5.3 $model->save() 值始终为空,但质量分配有效

Laravel 5.3 $model->save() values are always null however mass assignment works

型号

class Flight extends Model
{
    protected $fillable = ['name'];

    public $name;
}

在控制器中

Flight::create(['name' => 'test']);
$flight = new Flight();
$flight->name = 'John';   //echo $flight->name 'John' it works
$flight->save();

批量赋值创建有效,但是方法 ->save() 为对象存储了一个空值。我不明白我做错了什么。请帮忙!

嗯,首先,从您的模型中删除 public $name;,为什么需要它?

其次,两者兼而有之:

Flight::create(['name' => 'test']);

$flight = new Flight();
$flight->name = 'John';
$flight->save();

正确。

还有,你从哪里得到的null