2016-07-13 2 views
0

컨트롤러 레이어 앞에 요청 레이어가 있는데 규칙을 확인하고 올바른 데이터를 입력으로 가져올 수 있지만 올바른 위치는 확인 권한이 있습니까? 예를 들어 사용자가 API user?user_id=1 (PUT 메소드 사용) 으로 로그인 사용자 ID를 확인하고 싶습니다. 요청 레이어에 배치하면 user_id 매개 변수로 로그인 사용자 ID를 확인하고 요청 레이어에서 모델을 사용해야합니다. 프로그래밍 구조의? 그렇지 않다면 더 나은 위치는 어디입니까?Laravel 5 확인 권한

답변

1

요청시 이러한 유형의 논리를 사용하면 SRP를 분명히 위반하게됩니다. 요청 추상화 계층은 입력 데이터를 읽고이를 읽을 수있는 형식으로 직렬화합니다.

컨트롤러는 사용자의 입력에 따라 모델 레이어의 상태와 때로는 연관된 뷰 레이어의 상태를 변경합니다. 따라서 컨트롤러는 사용자의 입력을 검증 할 수 없습니다.

그러면 유효성 검사가 모델 계층에 적용됩니다. 이 계층은 도메인 논리를 담당하며 귀하와 같은 모든 관련 유효성 검사가 이루어지는 장소입니다.

나는 this 기사를 두 번 읽는 것이 좋습니다. 또한 SOLID이되고 dependency injection

과 같은 개념을 구현하기 시작하십시오.