Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何在rails中将唯一列添加到表中_Ruby On Rails_Database_Unique - Fatal编程技术网

Ruby on rails 如何在rails中将唯一列添加到表中

Ruby on rails 如何在rails中将唯一列添加到表中,ruby-on-rails,database,unique,Ruby On Rails,Database,Unique,我有一张桌子。我已经做了一个迁移,并在那里设置了add\u column:articles,:hash\u code,:string,:unique=>true,但它不起作用 你能给我一些帮助吗?根据 活动记录方式声称智能属于您的模型,而不是数据库。因此,诸如触发器或外键约束之类的特性并没有被大量使用,这些特性将一些智能推回到数据库中 诸如validates:foreign_key、:university=>true之类的验证是模型可以强制执行数据完整性的一种方法。关联上的:dependent选

我有一张桌子。我已经做了一个迁移,并在那里设置了
add\u column:articles,:hash\u code,:string,:unique=>true
,但它不起作用

你能给我一些帮助吗?

根据

活动记录方式声称智能属于您的模型,而不是数据库。因此,诸如触发器或外键约束之类的特性并没有被大量使用,这些特性将一些智能推回到数据库中

诸如validates:foreign_key、:university=>true之类的验证是模型可以强制执行数据完整性的一种方法。关联上的:dependent选项允许模型在父对象被销毁时自动销毁子对象


所以,您所需要做的就是验证模型中属性的唯一性,就是这样!如果您还想添加索引,则可以将其添加到迁移文件本身。

:unique=>true属于add\u index语句,而不是add\u column语句

添加索引语法如下所示:


add_index:table_name,:column_name,:unique=>true

它必须在我的模型中,像这样的
验证:hash_code的唯一性