현재 Laravel의 검증, 특히
unique
의 검증에 어려움을 겪고 있습니다.
유효성 검사기.
일부 값을 보유한 테이블이 있는데 중요한 것은
templateUrl
입니다.
. 내가하는 일은
templateUrl
를 포함하는 양식을 사용자에게 표시하는 것입니다.
그는 이전 (저장 후)과 다른 값을 입력 한 다음 변경하거나 그대로 둘 수 있습니다. 이
templateUrl
이 표에서 고유해야합니다. 따라서 사용자 가이
templateUrl
를 변경하면
양식에서 아직 사용하지 않은 경우 모든 것이 정상이지만 사용자가
templateUrl
를 변경하지 않고 저장하려고하면
그런 다음 유효성 검사에서 오류가 발생합니다 (동일한 행이라도 테이블에 이미 저장되어 있기 때문에 ...). 행과 열이 같더라도 값을 저장할 수없는 것 같습니다. 무슨 뜻인지 알고 싶습니다.
이것은 검증을위한 코드입니다 :
$this->validate($request,
[
'templateUrl' => 'required|unique:users'
],
[
'templateUrl.unique' => 'Diese URL ist leider schon vergeben. Bitte suchen Sie sich eine andere aus!'
]
);
동일한 사용자 인 경우 해당 값을 "입력"하거나 그대로 두도록 값을 저장하려면 어떻게해야합니까?
물론, 다른 사용자는 같은
templateUrl
를 입력 할 수 없습니다
그렇기 때문에 그러한 유효성 검사가 필요하지만 사용자가
templateUrl
를 허용하면
변경하지 않고 양식의 다른 필드 만 변경하면됩니다.
아이디어, 트릭?
- 답변 # 1
- 답변 # 2
따라서 아래와 같이 만들 수 있습니다. 다른 사용자에게만 고유한지, 사용자가있는 경우에만 확인하십시오. 이렇게하면 업데이트 및 저장 방법에서이 방법을 사용할 수 있습니다. 어쨌든-이 코드를 양식 요청으로 옮기는 것이 좋습니다.
$this->validate($request, [ 'templateUrl' => 'required|unique:users,templateUrl' . ($user === null ? '' : ',' . $user->id), ], [ 'templateUrl.unique' => 'Diese URL ist leider schon vergeben. Bitte suchen Sie sich eine andere aus!', ] );
관련 자료
- php - 각 사용자에 대한 라 라벨 고유 검증
- ID가 요청되지 않은 경우 Laravel 고유 유효성 검사
- php - 조건부 유효성 검사 규칙을 사용할 수 없습니다라 라벨
- PHP - php - 고유 한 유효성 검사에서 현재 전자 메일 제외
- php - 라 라벨에서 동일하지 않은 유효성 검사를 사용하는 방법
- php - Laravel에서 유효성 검사 규칙을 조롱하는 방법
- php - 라 라벨 배열 검증 무효화 값
- php - 2 개 필드의 유효성 검사 라 라벨 - 첫 번째는 datepicker이고 두 번째는 선택입니다
- php - 다른 필드에 따라 고유 한 배열에 대한 사용자 지정 유효성 검사 규칙을 만드는 방법
- php - laravel - 로그인 한 사용자의 고유 id에 액세스하여 데이터베이스 쿼리에서 사용하려면 어떻게합니까?
- laravel - 비밀번호 재설정시 유효성 검사 규칙 변경 방법
- php - Laravel 58 사용자 정의 유효성 검사 오류 '클래스가 없습니다'
- Laravel 유효성 검사가 예상대로 작동하지 않았습니다
- Laravel 양식 유효성 검사는 동일한 페이지에 머 무르지 않고 양식 오류가 발생하면 홈 페이지로 다시 리디렉션됩니다
- laravel에서 주소에 대한 유효성 검사 받기
- php - 라 라벨 검증은 실제로 잘못된 필드의 오류를 발생시키지 않습니다
- Laravel 8은 생성 및 업데이트시 열과 행을 통해 고유 한 유효성을 검사합니다
- 기본값이 0 일 때 최소값을 1로 설정하기위한 Laravel 유효성 검사 규칙
- php - 요청 검증에서 config () 사용하기
- php - Laravel은 일/주/월/년의 고유/고유 기록을 얻습니다
- php : 여러 열 데이터 값을 기반으로 한 Laravel 고유 유효성 검사
- Laravel, 내 home.blade.php에 관련 테이블의 관련 이름을 표시하는 방법은 무엇입니까?
- php : Postman은 내가 생성한 localhost laravel api 경로에 도달할 때 "어떤 응답도 받을 수 없습니다"를 반환합니다.
- php : 라라벨 FTPES 연결
- php : Eloquent 모델을 어떻게 동적으로 사용하고 변수에서 웅변 함수를 호출할 수 있습니까?
- php : Laravel 로그인 게시 방법은 빈 페이지로 리디렉션됩니다.
- php : Laravel : 체크박스를 만드는 방법
- php : Laravel If=== 문이 localhost에서는 작동하지만 서버에서는 작동하지 않습니다.
- php : S3 Laravel Disk가 버킷 내의 특정 폴더를 가리킬 수 있습니까?
- php : jwt를 사용하여 Laravel에 성공적으로 로그인한 후 오류 401
주어진 행 (이 경우 현재 행)을 무시하기 위해 유효성 검사에 추가 매개 변수를 추가 할 수 있습니다. 이에 대한 자세한 내용은 설명서를 참조하십시오.
예 :