2017-02-16 4 views
0

'checkboxWizard'BLOB 필드를 쿼리하는 방법에 대한 질문이 있습니다. 에서 tl_member에 해당 필드를 추가했습니다. 이것은 아주 잘 작동하고 있습니다. 각 멤버에게 "0 ~ N"선택을 추가 할 수 있습니다. 이 필드를 "myBlob"이라고합시다.Contao CMS 'checkboxWizard'BLOB 필드를 쿼리

이제는 "myBlob"에 Contao 방식을 사용하여 쿼리하는 방법에 대해 질문합니다. 우편 번호 "12120"이고 "myBlob"의 ID "2"가 선택된 모든 멤버를 원한다고 가정 해 봅시다. "2"뿐만 아니라 적어도 하나.

… WHERE myBlob LIKE '%"2"%' 

그래서 귀하의 경우가있을 수 있습니다 :

$arrColumn[] = "tl_member.postal=?"; 
    $arrValues[] = 12120; 

    $arrColumn[] = "tl_member.myBlob=?"; <- how to say “contains in the blob” here? 
    $arrValues[] = 2; 

    self::findBy($arrColumn, $arrValues) 

답변

2

(예 : 관계에 대한 기본 Contao 방법을 사용하는 경우)이 작업을 수행 할 수있는 유일한 방법은 같은 쿼리를 만드는 것입니다

$arrColumn[] = "tl_member.myBlob LIKE ?"; 
$arrValues[] = '%"2"%'; 

그러나 이것은 물론 성가 시며 모든 경우에 작동하지 않을 수 있습니다.

는 더 나은 방법이 도우미 '많은 많은'그와 codefog/contao-haste를 사용하는 것이 될 수있다 https://github.com/codefog/contao-haste/blob/master/docs/Model/index.md

이 방법 당신은 참조를 포함하는 별도의 테이블이있을 것이다.

+0

감사합니다. 사용하고 싶었던 항목이기도합니다. 마지막으로 루프의 값만 필터링합니다. – Iteration