رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
پست های متعلق به دسته های اصلی
#1
Question 
سلام. برای دسته بندی موضوعات از رفتارکننده tree استفاده کردم. با جدول post هم رابطه یک به چند داره.
حالا نیاز دارم که نام گروه های اصلی(انهایی که والد ندارند) و تعداد 10 پست طعلق به گروه های اصلی را در ویو بیارم.
مساله ای که در زیر هست اینکه پست های فقط مربوط به گروه اصلی را برمیگردونه و پست های متلعق به زیر گروه را بر نمی گردونه.
کد پی‌اچ‌پی:
$this->Category->contain(array('Post' => array(
        
'fields' => array('id''title'),
        
'limit' => $limit,
        
'order' => 'Post.created')));
        
$cats $this->Category->find('all', array(
       
'fields' => array('Category.id''Category.title'),    
        
'order' => array('Category.lft asc'),
        
'conditions' => array('Category.parent_id' => null),
        ));
        return 
$cats

مثلا دسته بندی:
ورزشی گروه اصلی. رزمی زیر گروه.
حالا پست هایی را بر می گرونه که پست ها فقط عضو گروه ورزشی باشند. دیگه شامل پست های رزمی نمی شه.
----------
راهی که به ذهن خودم می رسه اینکه کل گروههای والد را بگیرم در ابتدا و تو حلقه بندازم و کل پست های متعلق به هر گروه را به صورت زیر بگیرم:
کد پی‌اچ‌پی:
    $directChildren $this->Category->children($category['Category']['id']);
    
$directChildrenIds Hash::extract($directChildren'{n}.Category.id');
        
array_push($directChildrenIds$category['Category']['id']);
    
$products $this->Category->Product->find('all', array(
            
'recursive' => -1,
            
'conditions' => array(
                
'Product.category_id' => $directChildrenIds
            
),
            
'order' => array(
                
'Product.name' => 'ASC'
            
),
            
'limit' => 50
        
));
        
$this->set(compact('products')); 
خدایا، این دنیا را بیهوده نیافریدی.
پاسخ
سپاس شده توسط


پیام‌های این موضوع
پست های متعلق به دسته های اصلی - fery - 2013/03/14, 01:01 AM

موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  یک سوال در مورد دسته بندی صحیح متد ها emad 5 4,032 2019/07/26, 03:10 PM
آخرین ارسال: vildane

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان