Cakephp 通过改变模型中的条件来解决hasAndBelongsToMany问题
我通过动态地改变hasandbelongtomy条件来选择博客条目,CakePHP1.3不再适用于我。 奇怪的问题,因为它在1.2中运行良好,在模型中,我通过放置一个带有静态id的条件来测试它,看看会发生什么,Tag.name=>'libros'。但它通过了哈桑德贝隆胃条件。给我带来任何结果Cakephp 通过改变模型中的条件来解决hasAndBelongsToMany问题,cakephp,has-and-belongs-to-many,Cakephp,Has And Belongs To Many,我通过动态地改变hasandbelongtomy条件来选择博客条目,CakePHP1.3不再适用于我。 奇怪的问题,因为它在1.2中运行良好,在模型中,我通过放置一个带有静态id的条件来测试它,看看会发生什么,Tag.name=>'libros'。但它通过了哈桑德贝隆胃条件。给我带来任何结果 var $hasAndBelongsToMany = array('Tag' => array('className' => 'Tag',
var $hasAndBelongsToMany = array('Tag' =>
array('className' => 'Tag',
'joinTable' => 'blogs_tags',
'foreignKey' => 'blog_id',
'associationForeignKey'=> 'tag_id',
'conditions' => '',
'order' => '',
'limit' => '',
'unique' => true,
'finderSql' => '',
'deleteQuery'=> ''
)
在控制器中
$this->Blog->bindModel(array(
'hasAndBelongsToMany' => array(
'Tag' => array('conditions'=>array('Tag.name'=>'libros'))
)));
$this->Blog->find('all');
现在我不再有mysql错误,但我有其他记录和其他结果。奇怪。如果您有正确的数据库结构,必须使用此=
$this->Blog->bindModel(array(
'hasOne' => array(
'BlogsTag',
'FilterTag' => array(
'className' => 'Tag',
'foreignKey' => false,
'conditions' => array('FilterTag.id = BlogsTag.tag_id')
))));
$data = $this->Blog->find('all', array(
'fields' => array('Blog.*'),
'conditions'=>array('FilterTag.name'=>'libros')
));
您可以通过以下网址了解更多信息: