cakephp从单个列中的多个值中提取
我正在使用CakePHP2.3构建一个带有餐厅数据库的应用程序。现在,我前面的人已经将餐厅详细信息保存在一个名为“locations”的表格中,该表格中有一行菜,在一列中有多个值,比如一个位置可以有中国菜、印度菜、韩国菜等 如果我使用post获取数据,并使用如下精确值从列中检索:cakephp从单个列中的多个值中提取,php,mysql,cakephp,Php,Mysql,Cakephp,我正在使用CakePHP2.3构建一个带有餐厅数据库的应用程序。现在,我前面的人已经将餐厅详细信息保存在一个名为“locations”的表格中,该表格中有一行菜,在一列中有多个值,比如一个位置可以有中国菜、印度菜、韩国菜等 如果我使用post获取数据,并使用如下精确值从列中检索: $restaurant_cuisine = $this->params['url']['restaurant_cuisine']; $data = $this->Location->findAl
$restaurant_cuisine = $this->params['url']['restaurant_cuisine'];
$data = $this->Location->findAllByCuisine($restaurant_cuisine);
然后,只有在完全匹配的情况下,它才会显示值……例如:如果我发布“北印度、中国、穆格莱”,那么它会逐字匹配。
我想要一个查询,在那里我可以搜索中国和所有有中国特色的餐馆,即使他们有其他的菜系
请帮忙 不能使用magic find type,因为它们不允许类似的条件。必须使用完整语法:
$data = $this->Location->find(
'all',
array(
'conditions' => array('Location.cuisine LIKE' => "%$restaurant_cuisine%")
));
你好这很有魅力:)不过还有一件事,如果这个专栏有像“北印度、中国、穆格利”这样的价值存储,我希望非相邻的菜系也可以搜索……比如如果我在发布的数据中收到“北印度、穆格利”,即使中间有中国人,它也应该显示出来。基本上,是否有一个命令可以从列中的字符串中选择多个部分值?不,(我的意思是,不那么容易)。您最好创建一个名为couisines的新表和一个名为Couisine的模型,并将其与位置(Location HABTM Couries,反之亦然)联系起来