2011-10-01 79 views
-1
Array 
    (
    [0] => Array 
     (
     [DebateComment] => Array 
      (
       [id] => 126 
       [user_id] => 17 
       [debate_id] => 32 
       [debate_comment_title] => hiiiiiii 
       [debate_comments] => gfdfg dfg . 

       [debate_type] => against 
       [total_postive_counts] => 1 
       [total_negative_counts] => 0 
       [accept_challenges] => Enable 
       [status] => Active 
       [modified] => 2011-08-19 11:12:59 
       [created] => 2011-08-18 17:50:53 
      ) 

     [User] => Array 
      (
       [id] => 17 
       [group_id] => 3 
       [fb_user_id] => 0 
       [username] => xyz 
       [email] => [email protected] 
       [password] => 077dadf3cc9c5fcb95dfacc3d8ff5049123b2d89 
       [status] => 1 
       [verify_code] => 
       [signup_ip] => 
       [is_verified] => 1 
       [user_comment_warn_status] => 0 
       [user_ip_address] => 
       [referred_by_user_id] => 0 
       [twitter_user_id] => 0 
       [twitter_access_key] => 
       [twitter_access_token] => 
       [modified] => 2011-05-05 10:43:15 
       [Userdetail] => Array 
        (
         [id] => 14 
         [user_id] => 17 
         [firstname] => xyz 
         [lastname] => 
         [about_me] => 
         [tagline] => 

         [visible_status] => Online 

         [show_welcome_message] => Yes 
         [created] => 2011-05-05 10:43:15 
         [modified] => 2011-05-05 10:43:15 


        ) 

       ) 
    ) 

上面的数组描述了与对方的关系。cakephp 1.3:查找条件

我写这个查询,但剂量得到输出。

$arr = $this->DebateComment->find('all',array(
      'conditions'=>array('User.Userdetail.visible_status'=>'Online'), 'recursive'=>3)); 

我的问题:

我想找到所有DebateComment。但条件是visibale_status =>在网上的UserDetails。

+0

它是CakePHP版本1.2还是1.3? – JJJ

+0

cakePHP 1.3 ................ – chetanspeed511987

+1

这不是问题。 –

回答

2
$users = $this->DebateComment->User->Userdetail->find('list',array(
    'fields'=>array('user_id'), 
    'conditions'=>array('Userdetail.visible_status'=>'Online') 
)); 
$arr = $this->DebateComment->find('all',array(
    'conditions'=>array('DebateComment.user_id'=>$users) 
)); 

您可以使用可容纳或递归来获取第二个查询中的相关数据。

0

对不起,如果这是评论,但我没有看到任何选项来评论你的问题在我的界面。我认为这是一个JOIN的结果是你在这里或任何其他人实施BELONGSTO协会?你有没有尝试提到visibale_status ONLINE在JOIN条件?难道它的工作呢?也有另一种方式来获得递归data.try

$this->DebateComment-recursive = 3 

我不知道递归here.Please检查它的水平。

0
$arr = $this->DebateComment->find('all',array('joins' => array(array('table' => 'userdetails','alias' => 'Userdetail','type' => 'INNER','foreignKey' => false,'conditions' => array('DebateComment.user_id = Userdetail.user_id','Userdetail.visible_status'=>'Online'))), 
'recursive'=> 2));