0
我想知道在創建用戶時是否可以跳過或忽略約束違規。我有一個外鍵address_id
的用戶模型。第一次創建模型時,Laravel跳過約束違規
Schema::table('user', function($table) {
$table->foreign('address_id')->references('address_id')->on('address')->onDelete('cascade');
});
在創建用戶時,我想創建一個沒有地址的用戶,但以後會添加。
return User::create([
'first_name' => $data['firstname'],
'last_name' => $data['lastname'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
但是因此違反了約束條件。有可能做到這一點?
編輯:
因此,我想保持的約束,但上面的例子運行到違反約束那麼什麼是解決它的最好方法?製作虛擬地址條目?
謝謝,我不想忽略,就像你說的,但我不知道如何解決它。這是一個只有這些字段的註冊表單:名字,姓氏,電子郵件和密碼。我想保持約束,但不知道如何在這個例子中,最壞的情況下會跳過它像你的例子.. – Jacob
如果用戶不必有一個地址那麼爲什麼它是一個約束? –
@chaseenyc,我對此有點新,你可能是對的,我認爲這將是一個很好的做法,使數據庫保持緊密。所以這是不可能的,因爲對此進行約束。 – Jacob