可填充的质量分配错误


Laravel 4 eloquent Mass assignment error in fillable

我目前正在学习L4的雄辩,我遇到了这个大量的任务。我会按照说明,我知道你需要设置你的$fillable使用create方法,但我仍然在数据库中收到一个空白行。下面是我的代码:

模型:

class User extends Eloquent  
{
    protected $fillable = array('email','pwd','active','name');
}

控制器:

$user = new User;
$add = array(
    'name'=>Input::get('custname'),
    'active'=>1,
    'pwd'=>Hash::make(Input::get('pwd')),
    'email'=>Input::get('email')
);
return var_dump($user->create($add));

我也这样做了:控制器

$add = array(
'name'=>Input::get('custname'),
'active'=>1,
'pwd'=>Hash::make(Input::get('pwd')),
'email'=>Input::get('email')
);
return var_dump(User::create($add));

但结果还是一样的。

这是一个bug导致的,请参阅https://github.com/laravel/framework/issues/1548现在应该修复了,运行composer update获取最新版本的laravel/framework

是,在新版本中,您可以使用public或protected关键字。

简单使用:

protected $fillable = [‘email’, ‘pwd’,’active’,’name’];

你也可以指定表名,如果你正在使用其他模型,像这样:

public $table = ‘users’

在项目目录的根目录上运行composer update后工作正常