cakephp从两个表中获取数据

时间:2013-08-26 06:30:56

标签: cakephp

我有一个模型类FoodItem需要通过连接表menu_food_item来检索数据。这是代码。

    $fooditems=$this->FoodItem->find('all',array('joins'=>array(array('table'=>'menu_food_items',
                                         'alias'=>'mfi',
                                         'type'=>'inner',
                                         'forignKey'=>false,
                                         'conditions'=>array('mfi.food_item_id=FoodItem.id','mfi.menu_id'=>$menu_id))),'fields'=>array('FoodItem.id','FoodItem.food_item_title','FoodItem.active','mfi.menu_id')));

我想得到带有结果的menu_id。(来自menu_food_item表)这是pr($ fooditems);结果

Array
(
[0] => Array
    (
        [FoodItem] => Array
            (
                [id] => B102
                [food_item_title] => Prown cocktail
                [active] => 1
            )

        [mfi] => Array
            (
                [menu_id] => 2
            )

    )

)

但json_encoded结果仅显示FoodItems表数据。没有menu_food_item(mfi)数据。这是为什么?我想用结果显示menu_id

1 个答案:

答案 0 :(得分:0)

你在这里提取食物,所以它会给出一个像这样的数组

Array
(
[0] => Array
    (
        [FoodItem] => Array
            (
                [id] => B102
                [food_item_title] => Prown cocktail
                [active] => 1
            )
    )
)

请删除$fooditems=Set::extract('/FoodItem/.', $fooditems);,然后尝试。