English 中文(简体)
在CakePHP中如何排除关联模型中的记录?
原标题:
  • 时间:2008-12-18 13:58:54
  •  标签:

我正在使用CakePHP创建一个问答应用程序,并且我想在某些情况下排除我的关联。想象一下以下场景:

我正在使用 $this->Question->findAll() 将所有问题列在第一页上。由于在我的模型中有以下关联:

public $hasMany = array( Answer  =>
        array( className  =>  Answer ,
             order  =>  Answer.created DESC ,
             foreignKey  =>  post_id ,
             dependent  => true,
             exclusive  => false,
        )
    );

所有答案都将在起始页面上被选择,这并不是最佳的。我该如何在这种特定的方法中排除答案?

谢谢 (xiè xiè)

最佳回答

I quick look at the CakePHP API reveals that you ve got an unbindModel method on the Model. So in you example you can do this:

$this->Question->unBindModel(array( hasMany  => array(’Answer’)))

另外,您可以使用Containable行为,仅选择当前页面视图所需的MySQL片段。

问题回答

如果您正在使用CakePHP 1.2,则应考虑使用Containable行为。有关详细信息,请参见http://cakebaker.42dh.com/2008/05/18/new-core-behavior-containable/





相关问题
热门标签