首页 文章

cakephp复杂的发现

提问于
浏览
0

我想在客户连接时找到有关被跟踪用户的所有新闻(actus) .

我创建了这些表

User
ID
用户名
创建

Follows
ID
用户身份
follow_id

Actus
ID
用户身份
内容
创建

模型用户通过Hasmany关节链接到Follow和Actu

我试试这个,但它似乎不起作用

$this->Follow->find('all', array(
        'conditions' => array('Follow.user_id' => $this->Session->read('Auth.User.id')),
        'contain' => array('User' => array('Actu','conditions'=>array('User.id = Follow.follow_id')))));

有人可以帮我吗?

先感谢您

2 回答

  • 0

    我认为您的协会需要修改(修改您的模型和表格)

    将follow_id放在Actus表中然后跟随与Actus表相关的表并确认表名是Users

    你需要像Follows hasmany Actus和Follows这样的关联属于用户

    如果你拥有所有正确的关联,那么你可以使用find查询

    $this->Follow->find('all',array('conditions'=>array('Follow.user_id' => $this->Session->read('Auth.User.id')));
    

    请检查一下

    • 确保表名为Users

    • 在Actus表中放入了follow_id

    • 确保关联

  • 0

    这是结果

    数组([0] =>数组([关注] =>数组([id] => 12 [user_id] => 2 [follow_id] => 21)

    [User] => Array
                (
                    [id] => 21
                    [username] => isabelle
                    [mail] => isabelle@
                    [password] => 0469e87ef6441742744443fd1fc10f6bf59ee238
                    [created] => 2012-04-24 15:28:07
                    [lastlogin] => 2012-11-30 17:22:24
                    [active] => 1
                    [firstname] => Isabelle
                    [lastname] =>
                    [avatar] => 1335274087.jpg
                    [age] => 29
                    [town] => Paris
                    [url] => 
                    [Actu] => Array
                        (
                            [0] => Array
                                (
                                    [id] => 2
                                    [user_id] => 2
                                    [content] => <a href="/users/view/2">rti</a> a post&eacute; un message sur la page <a href="/events/view/4"></a>
                                    [created] => 2012-11-30 11:23:23
                                )
    

相关问题