对雄辩模型+迁移不起作用的更改

对雄辩模型+迁移不起作用的更改

问题描述:

我正在为我的Laravel 5.4项目添加一些身份验证。但是,在更新提供的User.php文件(这是一个Eloquent模型)$ fillable数组以对应于我的新用户表迁移时,注册新用户时的插入查询不会传播更改。见下文。对雄辩模型+迁移不起作用的更改

protected function create(array $data) 
    { 
     return User::create([ 
      'name' => $data['name'], 
      'email' => $data['email'], 
      'api_token' => str_random(60), 
      'password' => bcrypt($data['password']) 
     ]); 
    } 

我已经添加了“API令牌”到我的数据库,并更新了模型的$可填写阵列以及

protected $fillable = [ 
     'name', 'email', 'password', 'api-token', 
    ]; 

和我的移民已经刷新​​为这是加的变化“ API令牌”字段

Schema::create('users', function (Blueprint $table) { 
      $table->increments('id'); 
      $table->string('name'); 
      $table->string('email')->unique(); 
      $table->string('password'); 
      $table->string('api_token', 60)->unique(); 
      $table->rememberToken(); 
      $table->timestamps(); 
     }); 

但是我仍然得到了同样的错误,那就是:

null value in column "api_token" violates not-null constraint 

(SQL: insert into "users" ("name", "email", "password", "updated_at", "created_at") values (Bradley, [email protected], $2y$10$IBq0yEumngpeWf/oql1HgeMRYP1ANj.owXqkMc7gtIN/kxcW46Giu, 2017-05-03 13:37:56, 2017-05-03 13:37:56) returning "id") 

错误清楚地显示插入新用户时甚至没有考虑到api_token字段。我是否错过了对模型进行更改以使其生效后需要执行的Laravel更新?

+1

我将此问题标记为关闭,因为这是一个简单的印刷错误,不太可能帮助其他人 – milo526

在您的可供填写内容中,您添加了api-token,而在您的迁移和创建过程中您使用的是api_token
请注意-_之间的差异。

+0

我感到羞愧的是没有注意到这一点。 – Bradley