@Artemmmm13

Как правильно использовать unique rule в Laravel custom request classs?

Нужно обработать поле правилом unique, за исключением того если происходит update.То есть - если меняется какая то сущность проверять на уникальность и выкидывать ошибку если поле с таким значением уже есть, но если меняется та же самая модель то получается она тоже попадает под это правило и выкидывается ошибка. Как это исправить ?
Пробовал так:
public function rules()
    {   
        return [
            'title' => "required|min:3,max:255|unique:audiobook_genres,id",
            'slug' => "required|min:3,max:255|unique:audiobook_genres,id",
        ];
    }

И так:
public function rules()
    {   
        return [
            'title' => "required|min:3,max:255|unique:audiobook_genres,id,".$this->id,
            'slug' => "required|min:3,max:255|unique:audiobook_genres,id,".$this->id,
        ];
    }

А так же пробовал так:
public function rules()
    {   
        return [
            'title' => "required|min:3,max:255|unique:audiobook_genres,title,".$this->title,
            'slug' => "required|min:3,max:255|unique:audiobook_genres,slug,".$this->slug,
        ];
    }

Но ничего не помогло, так как же правильно использовать это правило в случае с обновлением модели ?
  • Вопрос задан
  • 261 просмотр
Решения вопроса 1
netrox
@netrox
Rule::unique('audiobook_genres')->ignore((int) $this->id);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы