首页 文章

cakephp 1.3分页habtm相关数据

提问于
浏览
3

我已经搜索了高低,并尝试了多种不同的解决方案,我似乎无法让它工作 . 基本上我有产品和类别 . 类别拥有并属于许多产品,而产品属于HABTM类别 . 它们显然与具有id,product_id,category_id字段的连接表products_categories相关 .

在完成简单的完整烘焙模型视图和控制器之后 - 添加了一些类别和产品并设置了它们的关系,我可以转到特定的类别视图页面,预烘焙视图将显示与此类别相关的产品 .

然而,有很多产品(并且会更多),我正在努力研究如何对所有这些相关数据进行分页 . 仅仅列出一个类别中的所有产品是不可行的(可能有100s或更多)有人可以帮忙吗?似乎有很多未解决的问题和各种不同的解决方案,我都无法开展工作!请帮忙!

2 回答

  • 3

    CakePHP控制器有built in pagination . 文档是彻底的,所以我建议先阅读 . 之后,我很乐意回答您对此问题的任何疑问 .

    在不知道所涉及的具体代码的情况下,这是一个如何对模型数据进行分页的简单示例:

    class CategoryController extends AppController {
        var $paginate = array(
            'Product' => array(
                'joins' => array(
                    array(
                        'table' => 'categories_products', // or products_categories
                        'alias' => 'CatFilter',
                        'type' => 'INNER',
                        'conditions' => array(
                            'CatFilter.product_id = Product.id'
                        )
                    )
                ),
                'limit' => 10
             )
        );
    
        function view ($category_id) {
            $this->set(
                'products', $this->paginate(
                    $this->Category->Product, array(
                        'CatFilter.category_id' => $category_id
                    )
                 )
            );
        }
    }
    
  • 0

相关问题