0

我正在使用 cakePHP 2.3 构建带有餐厅数据库的应用程序。现在,我之前的人已将餐厅详细信息保存在一个名为“位置”的表中,该表有一列中有多个值的美食,例如 1 个位置可以有中国、印度、韩国等。

如果我使用 post 获取数据并使用如下精确值从列中检索:

$restaurant_cuisine = $this->params['url']['restaurant_cuisine'];   
$data = $this->Location->findAllByCuisine($restaurant_cuisine);

然后它仅在完全匹配时才显示值......例如:如果我发布“北印度,中文,mughlai”,那么它会逐字匹配。我想要一个查询,我可以在其中搜索中文和所有显示中文的餐厅,即使他们有其他菜系。

请帮忙!

4

1 回答 1

0

您不能使用魔术查找类型,因为它们不允许 LIKE 条件。您必须使用完整的语法:

$data = $this->Location->find(
    'all', 
     array(
         'conditions' => array('Location.cuisine LIKE' => "%$restaurant_cuisine%")
     ));
于 2013-09-27T10:35:02.610 回答