Laravel - проверить ввод с помощью Rule :: unique - PullRequest
0 голосов
/ 16 октября 2018

Как я могу проверить переменную, если имя переменной отличается от имени столбца в БД.

 'gameDetails.title' => [
                'required',
                'string',
                'between:3,100',
                Rule::unique('games')->ignore($this->input('gameId')),
            ],

В приведенном выше примере мое имя входной переменной - "gameDetails.title", но в БД мое имя столбца простозаглавие.Так что в этом случае у меня есть эта ошибка:

SQLSTATE [42S22]: Столбец не найден: 1054 Неизвестный столбец 'gameDetails.title' в 'предложении where'

Итаккак сказать "laravel" мое имя столбца просто "заголовок"?

Спасибо.

1 Ответ

0 голосов
/ 16 октября 2018

Валидатор unique принимает второй параметр, который является именем столбца в базе данных:

Rule::unique('games','title')->ignore($this->input('gameId'))

https://laravel.com/docs/5.7/validation#rule-unique

/**
 * Get a unique constraint builder instance.
 *
 * @param  string  $table
 * @param  string  $column
 * @return \Illuminate\Validation\Rules\Unique
 */
public static function unique($table, $column = 'NULL')
{
    return new Rules\Unique($table, $column);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...