我有一種表單,用戶可以將項目發佈到數據庫,同時創建一個新用戶,並將兩個用戶鏈接在一起。「Laravel 5.1」使用userId添加用戶和項目
表中的Usersid和projects.user_id值。但是,我有一個小問題。如果我從用戶表中獲取最後一個ID,並使用那個+1作爲下一個ID,它就可以工作。但是如果用戶在添加新項目之前被刪除,那麼在應用程序啓動時它會變得非常混亂。
比方說,我得到的最後一個用戶爲表5中的id 5。但是,有人刪除了它,我在第二天用新用戶創建了一個新項目。現在下一個id將是id 6.但根據我的代碼,它反映了5個在projects_table中,但在users_table中它變成了6.
我想知道如果有人可以建議我一個功能,我可以使用正確的編號?
功能驗證之前得到最後一個ID
public static function getLastRow(){
$data = DB::table('users')->select('id')
->orderBy('id', 'desc')
->first();
return $data->id;
}
我算最後一個ID爲它添加到項目
$lastidplus = (int)User::getLastRow() + 1;
在我的驗證
我有這樣的:
'user_id' => $lastidplus,
注意::這可以工作,但如果將來用戶表中的最後一行被刪除。在相應的項目表中會出現虛假ID的連鎖反應,因爲他總會有一個差異。我想讓這不可能。
感謝@Raj爲使其更好一點。再次發帖時會更加註意! –
因爲你的英語不夠好,你能否在你的問題中包括一些代碼,以便我們更好地理解 – Digitlimit
@StefanoGroenland你永遠wlcm – CandleCoder