Что Laravel изменить первичный ключ по умолчанию из таблицы users
Я пытаюсь изменить первичный ключ по умолчанию из id
of users
таблицы userId
, но механизм аутентификации Laravel всегда проверяет id
с users
таблица. Пример:
Users:: check () и Users:: attempt()
эти функции всегда проверяют на на users
таблица, Как изменить это поведение Laravel.
3 ответов
чтобы переопределить первичный ключ, используемый для поиска, необходимо определить свойство primaryKey в модели пользователя.
protected $primaryKey = 'userId';
можно использовать
protected $primaryKey = 'Your_Primary_key';
в модели.
вероятно, стоит указать, что если определяемый вами primaryKey не является целочисленным ключом, вам также нужно добавить следующее:
public $incrementing = false;
в противном случае ключ будет приведен к int
Eloquent предполагает, что внешний ключ должен иметь значение, соответствующее
id
(или custom$primaryKey
)
так, в своем User
модель использовать
protected $primaryKey = 'userId';