簡體   English   中英

Laravel更改users表的默認主鍵

[英]Laravel change default primary key of users table

我試圖將默認主鍵從users表的id更改為userId ,但Laravel身份驗證機制始終檢查來自users表的id 例:

Users :: check()和Users :: attempt()

這些函數總是檢查users表的id屬性,如何改變Laravel的這種行為。

要覆蓋用於搜索的主鍵,必須在User模型上定義primaryKey屬性。

protected $primaryKey = 'userId';

您可以使用

protected $primaryKey = 'Your_Primary_key';

在模型中。

可能值得指出的是,如果您定義的primaryKey不是整數鍵,您還需要添加以下內容:

public $incrementing = false;

否則密鑰將被轉換為int

Eloquent假設外鍵應具有與id匹配的值(或自定義$primaryKey

因此,在您的User模型中使用

protected $primaryKey = 'userId';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM