2017-02-16 67 views
0

我有一個關於如何查詢'checkboxWizard'BLOB字段的問題。在tl_member中添加了這樣的字段。這工作非常好。我可以爲每個成員添加「0到N」選項。我們稱這個字段爲「myBlob」。Contao CMS查詢'checkboxWizard'BLOB字段

現在的問題是如何使用Contao方式查詢「myBlob」?假設我希望郵政編碼爲「12120」的所有成員都選中「myBlob」的編號爲「2」的成員。不僅是「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方法時)的唯一方法是創建這樣一個查詢:

… WHERE myBlob LIKE '%"2"%' 

所以你的情況可能是:

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

但是,這當然很麻煩,並且可能在所有情況下都不起作用。

可能是一個更好的辦法是使用codefog/contao-haste其「多對多」幫手:https://github.com/codefog/contao-haste/blob/master/docs/Model/index.md

這樣,您將有一個包含引用一個單獨的表。

+0

感謝這也是我試圖使用,最後我只是在循環過濾值。 – Iteration