我正在尝试使用Laravel 5.8完善api注册系统。每次我运行注册时,api_token字段都会保持为空。我可以肯定我已经正确地遵循了说明,但是我仍然遇到错误。
这是我创建的迁移。
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class UpdateUsersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
//
Schema::table('users', function ($table) {
$table->string('api_token', 80)->after('password')
->unique()
->nullable()
->default(null);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
}
}
以下是注册控制器中的创建方法。
/**
* Create a new user instance after a valid registration.
*
* @param array $data
* @return \App\User
*/
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
'api_token' => Str::random(60),
]);
}
这几乎就像在该过程中完全忽略了“ api_token”字段。其他所有字段均在此过程中完成。
答案 0 :(得分:1)
首先让我看看:您是否在用户模型的用户 $ fillable 数组中添加了'api_token'?