2012-05-05 20 views
0

私は2つのテーブルから情報を表示する方法を学ぼうとしています。Kohana ORM表示情報

テーブル:

categories {category_id, category_title} 
forums {forum_id, forum_title} 
categories_forums {id_category, id_forum} 

モデル:

class Model_Forum extends ORM { 

protected $_primary_key = 'forum_id'; 

protected $_belongs_to = array(
    'categories'=> array(
     'model' => 'category',     
     'through' => 'categories_forums',  
     'far_key' => 'id_category',   
     'foreign_key' => 'id_forum' 
    ), 
); 
} 

class Model_Category extends ORM { 

protected $_primary_key = 'category_id'; 

protected $_has_many = array(
    'forums'=> array(
     'model' => 'forum',     
     'through' => 'categories_forums',  
     'far_key' => 'id_forum',   
     'foreign_key' => 'id_category'  
    ), 
); 
} 

私は表示する方法がわかりませんよ。

$categories = ORM::factory('category'); 

$forums = $categories->forums->find_all(); 

私はCATEGORY_ID、category_title、forum_id、forum_titleを表示するようにしていない方法:

は、これまでのところ、私は次のよう持っています。

答えて

0

次は動作するようです:

$categories = ORM::factory('category')->find_all(); 

$view = new View('default/index'); 

$view->categories = $categories; 

$this->response->body($view); 

foreach ($categories as $category) : 
echo $category->category_title; 
echo $category->category_id; 
foreach ($category->forums->find_all() as $forum) : 
echo $forum->forum_title; 
echo $forum->forum_id; 
endforeach; 
endforeach; 
0

あなたはこのように、foreach文を使用することができます。

$categories = ORM::factory('category'); 
foreach ($categories->find_all() as $category){ 
    echo $category->category_title, ' ', $category->id; 
} 
関連する問題