我正在使用cakePHP 2.3来构建一个带有餐馆数据库的应用程序。现在,我之前的人已将餐馆的详细信息保存在一个名为“locations”的表中,该表中有一行菜肴,其中一列中有多个值,例如1个位置可以有中文,印度,韩文等。
如果我使用post获取数据并使用精确值从列中检索:
$restaurant_cuisine = $this->params['url']['restaurant_cuisine'];
$data = $this->Location->findAllByCuisine($restaurant_cuisine);
然后只有当它完全匹配时才显示值...例如:如果我发布“北印度,中文,mughlai”,那么它会逐字匹配。 我想要一个查询,我可以搜索中文和所有有中文显示的餐馆,即使他们有其他美食。
请帮忙!
答案 0 :(得分:0)
你不能使用魔法查找类型,因为它们不允许LIKE条件。您必须使用完整语法:
$data = $this->Location->find(
'all',
array(
'conditions' => array('Location.cuisine LIKE' => "%$restaurant_cuisine%")
));