0
我在TYPO3 Extbase中創建了M:N關係。 使用以下代碼我已將限制添加到QueryBuilder。TYPO3 Extbase Querybuilder在約束的最後添加'AND 1 <> 1'
foreach ($selectedFeatures as $value) {
$constraints[] = $query->contains('features', $value);
}
$query->matching(
$query->logicalAnd(
$constraints
)
);
它工作正常,直到4特徵。在此之後,QueryBuilder在約束條件'AND 1 <> 1'的末尾添加。 這就是我沒有結果的原因。
有人知道這可能是什麼嗎? '$ selectedFeatures'中的每個項目都是來自'Feature'模型的對象。這是我檢查過,這是正確的。
感謝您的回答,但這不可能。我已經從日誌文件中的$ selectedFeatures中寫入每個項目以檢查值,並且沒有人爲空。另外我添加了一個if條件來檢查值!is_null($ value)。 – GoatMachine
啊,你檢查了。查詢中是否存在其他約束條件? '$ query-> in()'也可以產生'1'> 1'。它必須是兩者中的一個,它是整個extbase中唯一出現的<>操作符。而且我們不需要grep for'<' . '>'',對嗎? – undko
不,沒有更多的限制在這個查詢。我刪除了一個功能時會發生此問題。但是這個功能不再存在於整個項目中。在我刪除這個之前,查詢工作正常。 – GoatMachine