在我的Users
模型上,它只能接受某些列嗎?Laravel雄辯模型只傳遞某些參數
就像我在Users
型號上傳遞用戶名,電子郵件和密碼一樣,它將過濾爲只接受用戶名和密碼。
我試圖填滿protected $fillable = ['username','password'];
,但它似乎不起作用。
在我的Users
模型上,它只能接受某些列嗎?Laravel雄辯模型只傳遞某些參數
就像我在Users
型號上傳遞用戶名,電子郵件和密碼一樣,它將過濾爲只接受用戶名和密碼。
我試圖填滿protected $fillable = ['username','password'];
,但它似乎不起作用。
這取決於您的數據庫中用戶模型的架構。有一個laravel附帶的用戶表的遷移文件,如果你運行php artisan migrate,這應該在數據庫中。下面是遷移文件的一部分附帶Laravel(數據庫/找到遷移/):
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
你可以看到,只有三列,你可以在默認情況下填寫,你可以,如果你添加更多的在這裏通緝。儘管在對遷移文件進行更改之前,您需要運行php artisan migrate:rollback,然後再運行php artisan進行遷移。 (https://laravel.com/docs/5.4/migrations)
的保護$可填寫陣列只是選擇哪些屬性可以大規模分配(https://laravel.com/docs/5.4/eloquent#mass-assignment),所以你會需要這些,如果你想使用的靜態創建方法是這樣的:
User::create(['name' => 'John Doe', 'email' => '[email protected], 'password' => bcrypt('password')]);
什麼錯您?你能顯示任何錯誤嗎? – Jusfunny
你的模型中有'protected $ guarded = [];'嗎? –