我有一个模型Track
,它有两个属性:
disc
表示该曲目所属的光盘,number
表示该曲目上曲目的数字顺序。
我想验证曲目编号的唯一性,即每张光盘只能有一个唯一的曲目编号。因此,例如在光盘1(或光盘2)上,只能有一个曲目number
为1的曲目。
在Rails'中是否存在预先存在的方法。唯一性验证,其中一个属性依赖于另一个属性?如果不是,那么编写自定义验证的最佳方法是什么?
答案 0 :(得分:1)
您可以使用stack new_stack(void)
{
struct stack_t* new = malloc(sizeof(struct stack_t));
new->count = 0;
new->head = NULL;
return new;
}
validates_uniqueness_of
scope
顺便说一句,在数据库级别,您还应该使用validates_uniqueness_of :number, scope: [:disc, album_id]
验证它:
unique index
或使用提供复合主键功能的gem。