Laravel модель найти другой столбец - PullRequest
0 голосов
/ 07 мая 2020

Можно ли перезаписать функцию 'find' модели Laravel? Когда я использую model :: find (), он ищет столбец 'id', но в моей таблице нет столбца id, но столбца SubscriptionId.

Я знаю, что могу использовать: model::where('subscriptionId', $id), но мой задания в очереди сейчас не работают ..

Ответы [ 2 ]

0 голосов
/ 07 мая 2020

Найти в Laravel выполняет поиск в таблице на основе первичного ключа. Если вы не используете id в качестве ключа, вы можете указать Laravel в своей модели.

protected $primaryKey = 'subscriptionId';

Это укажет Laravel на поиск этой модели на основе первичного ключа subscriptionId вместо id. Это должно решить эту проблему за вас. Документы по первичным ключам

0 голосов
/ 07 мая 2020
model::where('subscriptionId', $id)->first()

Убедитесь, что ваш идентификатор подписки уникален. Сообщите мне, если мой код фрагментов не работает

или

model::findOrFail($id, 'subscriptionId')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...