Как изменить id на uuid?

#php #laravel #validation #eloquent

#php #laravel #проверка #красноречивый

Вопрос:

SQLSTATE[42S22]: столбец не найден: 1054 неизвестных столбца ‘id’ в предложении ‘where’ (SQL: выберите count(*) в качестве агрегата из shops where username = csesumonpro и id 5d4cb970-197d-41db-90e1-26988d543935)

как изменить id на uuid при выполнении запроса? я использую uuid в своей модели вместо id, который я уже определил

  protected $primaryKey = 'uuid'; // in my model 
  

Показать вышеуказанную ошибку при использовании уникальной проверки электронной почты, уникальная проверка электронной почты выполняет запрос с автономным идентификатором захвата, но мне нужен uuid .в остальном все в порядке.

 'email' => 'unique:users,email,'.$user->id  // validation code
  

Комментарии:

1. Не 'unique:users,email,'.$user->id было бы 'unique:users,email,'.$user->uuid бы??

2. я уже изменил id на uuid, но та же ошибка

3. Вы думали о создании собственного пользовательского правила в этом экземпляре?

4. laravel.com/docs/5.2/validation#rule-unique

5. нет @thisiskelvin

Ответ №1:

Вам необходимо указать имя столбца uuid, поскольку вы не используете числовые идентификаторы.

Итак, он должен гласить:

 'email' => 'unique:users,email,'.$user->uuid.',uuid'