我想使用窗體創建新的客戶端,但我不能這樣做。問題是: 完整性約束違規:1048列「名稱」不能爲空質量分配和完整性約束違規
下面是一些代碼:
protected $fillable = [ 'name']
Client::create($request->all());
我如何做是正確的?
我想使用窗體創建新的客戶端,但我不能這樣做。問題是: 完整性約束違規:1048列「名稱」不能爲空質量分配和完整性約束違規
下面是一些代碼:
protected $fillable = [ 'name']
Client::create($request->all());
我如何做是正確的?
該錯誤消息意味着當您嘗試創建新客戶端時,name
沒有任何價值。確保您的HTML表單輸入名爲name
。輸入名稱必須與數據庫表中列的名稱相匹配。這很可能是你的問題。
UPDATE
$table->string('name')->nullable();
php artisan migrate:refresh
現在,您就可以,而不需要一個名稱以創建一個新的客戶端。
在您的遷移,你必須設置你的名字字段可空:
$table->string('name')->nullable();
,或者設置默認值()值:
$table->string('name')->default('');
然後,你必須運行遷移到更新表格。
我有列名稱,輸入是命名的名稱,但我沒有輸入文字,因爲我不想要它。而且我無法用空表單創建客戶端。 – SuperProgrammer
@SuperProgrammer如此我清楚,您希望能夠創建一個新客戶端,而不必輸入名稱,正確嗎? – three3
是的,我也有另一個輸入,但我想創建即使是空的。那麼只有ID會在那裏。 – SuperProgrammer