Laravel 양식 유효성 검사
라라벨은 즉시 사용할 수 있는 몇 가지 기본 유효성 검사 규칙을 가지고 있지만, 우리 자신의 규칙 세트를 정의하고 싶은 몇 가지 인스턴스가 있습니다. 복잡한 시나리오가 있을 수 있으므로 양식 요청을 작성해야 합니다. 프로그래밍에서도 SOLID 원칙의 SRP는 클래스가 하나의 작업만 수행해야 하므로 컨트롤러의 저장 방법은 데이터 저장만 처리하고 처리하지 않아야 합니다. 확인.
더 잘 이해하게 될 것입니다.
더 많은 업데이트를 받으려면 나를 팔로우하려면 내 버튼을 클릭하세요.
1단계: 양식 요청 작성
양식 요청을 생성하기 위해 artisan 명령을 사용합니다.
php artisan make:request StoreProjectRequest
StoreProjectRequest.php 파일이 있는 app/Http/디렉토리에 Requests라는 폴더가 생성되고 파일을 열고 유효성 검사 규칙을 작성해 보겠습니다.
2단계: 유효성 검사 규칙 작성
app/Http/Requests/StoreProjectRequest.php로 이동합니다.
유효성을 검사하려는 모든 필드는 규칙 메서드 반환 시 키-값 쌍으로 작성되어야 합니다.
public function rules()
{
return [
'name' => 'required|max:100',
'introduction' => 'required|max:255',
'location' => 'nullable',
'cost' => 'required|integer'
];
}
3단계: 오류 메시지 작성
Laravel이 일련의 오류 메시지를 제공했기 때문에 이것은 선택 사항입니다. 그러나 각 오류에 대해 오류 메시지를 작성하도록 결정할 수 있습니다.
message()라는 메서드를 만들고 오류 메시지 배열을 반환합니다.
public function messages()
{
return [
'name.required' => 'You need to provide the name of the project',
'name.max' => 'The name of the project should not be greater than 100 characters',
'introduction.required' => 'Please provide the introduction of the project',
'cost.integer' => 'The cost of the project must be a number'
];
}
이제 StoreProjectRequest는 다음과 같이 표시됩니다.
4단계: 컨트롤러에서 요청 유형 힌트
이제 컨트롤러로 이동하고 유효성을 검사하려는 저장소 메서드로 이동한 다음 일반적인 요청을 대체하는 StoreProjectRequest를 입력 힌트합니다.
public function store(StoreProjectRequest $request)
{
$request->validated();
Project::create($request->all());
return redirect()->route('projects.index')
->with('success', 'Project created successfully.');
}
다음과 같이 검증된 요청을 검색할 수 있습니다.
$validated = $request->validated();
그래서 이렇게 사용하시면 됩니다
$projectName = $validated["name"];
오류가 있는 경우 오류는 오류 백에 저장되고 세션의 보기 또는 저장소로 다시 전송됩니다.
테스트
앱을 실행하고 페이지 만들기로 이동합니다.
유효성 검사 규칙을 위반하는 값이 포함된 양식을 제출하고 제출을 시도하십시오.
더 많은 내 기사를 보려면 나를 팔로우하고 의견, 제안 및 반응을 남길 수 있습니다.
저는 PHP(Laravel) 백엔드 엔지니어로서 모든 공석에 개방되어 있으며 어떤 직업에도 사용할 수 있습니다.
시간 내 주셔서 감사합니다
Reference
이 문제에 관하여(Laravel 양식 유효성 검사), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kingsconsult/laravel-form-validation-5dla텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)