백엔드
-
Larvel 5.8에 contribution을 하다백엔드/Laravel 2019. 8. 3. 22:15
1. 문제 발견 라라벨로 TDD를 하던 중, 분명 실패를 해야할 테스트 코드가 통과가 되는 이상한 현상이 있었습니다. Input validation을 테스트하는 과정에서 발견된 결함이었습니다. 예를 들어 아래와 같은 테스트가 있었습니다. $response = $this->json('post', '/api/messages', [ 'body' => '', 'receiver' => '' ]); $response->assertJsonValidationErrors([ 'body' => 'required', 'receiver' => 'required' ]); 위 테스트는 의도적으로 body와 receiver라는 필드를 빈 문자열로 넘기고, 각 필드가 required라는 에러 메세지를 받는지를 테스트하는 코드입니다...
-
[Laravel] update시에는 unique validation 무시하기백엔드/Laravel 2019. 2. 8. 16:27
기존 코드 1234567 public function rules() { return [ 'domain' => 'required|unique:system.tenants|max:15' ]; } Colored by Color Scriptercs 기존 코드에서는 모델을 업데이트 할때도 unique 유효성 검사를 하기 때문에 문제가 됐었다.이를 해결하기 위해 unique 검사를 할 때 특정 id의 값은 무시하는 방법이 있다. 1234567891011 public function rules() { return [ 'domain' => [ 'required', 'max:15', Rule::unique('system.tenants')->ignore($this->id) ] ]; } Colored by Color Scri..