2014-07-06 2 views
0

케이크 검색 방법에 "나에게 광석이 아닌 필드 만 제공"옵션이 있습니까? 조건 배열의 모든 필드에 대해이 조건을 seperatly 넣고 싶지 않습니다. 이렇게 필드 배열에 옵션으로 설정하는 것이 좋습니다.cakephp : "필드 만 null이 아님"과 같은 필드 옵션을 설정하는 방법

$this->find('first',array(
     'fields' => array("not" => null) 
)); 

또는 이와 같은 입력란을 제외 할 수도 있습니다.

$this->find('first' array(
     'fields' => array('not' => array('id','created','modified')) 

)); (조건 등의 문제가 그 이유?)

덕분에, 귀도

답변

0

조건을해야 할 것입니다.

그러나 beforeFind() 메서드에 넣을 수 있으므로 각 쿼리에 조건을 추가 할 필요가 없습니다. beforeFind()에 넣으면 실제로 찾기를 실행하기 전에 모든 쿼리에 조건이 추가됩니다. "조건으로는 아니지만"실제로 그렇게 할 수없는 이유에 대해 많은 논점을주지 않기 때문에 내가 정말로 원하는 것으로 들린다.

+0

안녕하세요 Dave, 감사합니다. 나는 NULL 필드 필터링 솔루션을 찾았다 고 생각합니다. 하지만 fields-option에는 정적 메서드 Set :: filter가 있습니다. 그래서 내 데이터를 다음과 같이 필터링 할 수 있습니다 : $ this-> set (Set this ::> SomeModel-> find ('first')))); – user3803995

+0

필드가 여러 개의 hasOne을 설정하고 클래스 헤드에 많은 조인이 있어야하기 때문에 y 조건을 설정하는 데 문제가 있습니다. 테이블은 많은 열을 가지고 있으며, 더 쉽게 (비록 가능할 때도 :)) "전혀 null 필드가 없다"라고 말하거나 "id, created and modified"와 같은 필드를 열거하고 싶지는 않습니다. . – user3803995

+0

그래서 조건을 사용할 수는 있지만 가능한 경우에도이 옵션을 다른 방식으로 설정하는 것이 좋을 것입니다. 대단히 감사합니다;) – user3803995