<span style="color: #008080;">1</span> <span style="color: #800080;">$q</span>->where('created_at', '>=', <span style="color: #008080;">date</span>('Y-m-d').' 00:00:00'));
기존에는 데이터를 확인할 때 where 조건을 직접 사용하여 값을 비교했는데, 위 코드의 세 번째 매개변수가 다음을 추가하지 않고 date('Y-m-d')인 경우 형식에 대한 요구 사항이 엄격해집니다. 00:00 :00 이렇게 하면 데이터베이스에서 찾을 수 없습니다
그리고 동일한지 여부를 판단하는 데에도 형식에 대한 엄격한 요구 사항이 있습니다
<span style="color: #800080;">$q</span>->whereDate('created_at', '=', <span style="color: #008080;">date</span>('Y-m-d'));
이제 laravel의 자체 메소드인 whereDate를 사용하세요. 이는 자동으로 날짜 형식을 처리하여 날짜가 검색 형식과 일치하는지 확인하는 데 도움이 됩니다.
<span style="color: #800080;">$q</span>->whereDay('created_at', '=', <span style="color: #008080;">date</span>('d'<span style="color: #000000;">)); </span><span style="color: #800080;">$q</span>->whereMonth('created_at', '=', <span style="color: #008080;">date</span>('m'<span style="color: #000000;">)); </span><span style="color: #800080;">$q</span>->whereYear('created_at', '=', <span style="color: #008080;">date</span>('Y'));
예를 들어 위 코드는 일수가 특정 값일 때만 검색합니다. whereDay를 사용하면 특정 날짜에 일치하는 값을 데이터베이스에서 검색합니다.
일반적으로 이 방식의 활동 장면은 모델에 있습니다
class Company extends \Eloquent{...
<br> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> memberApplies() { </span><span style="color: #0000ff;">return</span> <span style="color: #800080;">$this</span>->belongsToMany('App\User', 'user_company_applies'<span style="color: #000000;">) </span>->wherePivot('apply_status', UserCompanyApply::<span style="color: #000000;">applyVerify) </span>->wherePivot('type', UserCompanyApply::<span style="color: #000000;">TYPE_USER); }</span>
wherePivot이 무슨 뜻인가요? , 첫 번째는 다중 연결 관계를 설정하는 회사 및 사용자 테이블이며, 연결 테이블은 user_company_applies입니다
우선 wherePivot을 추가하지 않을 경우 표시 방법
데이터베이스는 다음과 같습니다
,
컨트롤러:
3개의 데이터를 표시합니다.
즉, 중간 테이블에서 company_id 1에 해당하는 user_id 데이터를 찾은 후 user_id 값을 user 테이블로 가져와서 어떤 데이터가 있는지 쿼리해 보면 바로 이 3가지 항목이 원래의 다대다입니다. -많은 과정
이제 wherePivot 메소드가 추가되면 판단 조건을 추가한 것에 불과합니다. 다대다 데이터를 얻은 후 중간 테이블에서 apply_status 및 type 필드를 찾아 어떤 데이터가 1인지 알아보세요. .있는 경우
가 표시됩니다.이제 데이터베이스는 다음과 같습니다
두 값 모두 1입니다. user_id 2525로 데이터를 쿼리할 수 있는지 살펴보겠습니다
테스트 시작
알았어