2014-03-06 65 views
0

我使用kohana-pagination module by Morganguide),我想知道如何使用這個表之間的關係。使用kohana關係(has_many等..)與kohana分頁

這裏是一個例子。

我有三個表categoriespostscategories_post(透視表)

Categories的has_manyPosts通過categories_postPosts的has_manyCategories通過categories_post

精細,可以完美兼容的Kohana 。

現在我想使用分頁模塊來顯示帖子及其類別的列表。通常我只是JOIN的表格,然後我抓取,但與Kohana +這個模塊,我不知道如何使用它。

我試過這個:

$paginate = Paginate::factory(ORM::factory('post')))->columns(array('id','categories.name'))->execute(); 
+0

您需要自己做一些努力。爲什麼不能按照指南/它不起作用?你想要超過帖子(然後顯示他們的類別),類別或兩者? – kero

+0

我想獲得一個與他們的類別相同的帖子列表。 我會舉一個代碼示例 – zeomega

回答

1

一定要安裝程序之前,初始化分頁的ORM對象,你應該使用的關係沒有問題。請記住,Paginate只是在拉動迴應之前在您的物體上建造。

如果在ORM類中處理關係,那麼與Paginate沒有什麼特別的關係。建議在列名前添加表名(例如「post.id」)。如果要加入ORM外,一定要做到這一點之前,通過ORM進行分頁:

$post = ORM::factory('post') 
    ->join('category') 
    ->on('post.id', '=', 'category.post_id'); 

$paginate = Paginate::factory($post) 
    ->columns(array('post.id','category.name')) 
    ->execute(); 

我分頁的創建者和維護者,很高興回答你的任何問題。謝謝。

+0

感謝您的幫助,併爲這個完美的模塊:) 所以我只需要使用通常的orm(通過puttin連接表等),分頁sys不能直接訪問關係(has_many,has_many_through等)(它們已經在ORM對象中)..也許你可以自動加入 – zeomega