[英]Different models in CakePHP rating plugin
我有一个网站列出各种类别的MP3文件。 该网站位于CakePHP中,我使用CakePHP星级评级插件进行评级功能。 这些歌曲是根据专辑,歌手和音乐总监分类的,所以我需要对这些歌曲进行评级。 我现在使用的评级插件有一个指定模型的选项。 它的模型类是这样的:
class Rating extends Model {
var $name = 'Rating';
var $validate = array(
'user_id' => array(
'rule' => array('maxLength', 36),
'required' => true
),
'model_id' => array(
'rule' => array('maxLength', 36),
'required' => true
),
'model' => array(
'rule' => 'alphaNumeric',
'required' => true
)
);
var $hasMany = array(
'Rating' => array(
'className' => 'Rating',
'foreignKey' => 'model_id',
'conditions' => array('Rating.model' => 'rating'),
'dependent' => true,
'exclusive' => true
)
);
}
它有选项来指定模型名称和模型ID,所以我认为如果我能够指定模型名称或任何其他参数以及此数组,我的问题将得到修复。 因为我是CakePHP的新手,有人请帮助我找到解决方案。
请检查我在这里谈论的评级插件:
http://bakery.cakephp.org/articles/schneimi/2010/08/19/ajax-star-rating-plugin-1
$ hasMany属性定义需要放在您想要评估的模型中。 所以对于Album ,它看起来像:
/**
* Album Model
*/
class Album extends Model
{
var $name = 'Album';
var $hasMany = array(
'Rating' => array(
'className' => 'Rating',
'foreignKey' => 'model_id',
'conditions' => array(
'Rating.model' => 'Album'
),
'dependent' => true,
'exclusive' => true
)
);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.