我有一个关于如何查询' checkboxWizard'的问题。 BLOB领域。在为tl_member添加了这样的字段。这工作得非常好。我可以为每个成员添加“0到N”选择。我们称这个字段为“myBlob”。
现在的问题是如何使用Contao方式查询“myBlob”?假设我想要邮政编码“12120”中的所有成员,并选择“myBlob”的ID为“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)
答案 0 :(得分: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
这样你就会有一个包含引用的单独表。