Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.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 3:什么是;具有唯一索引列“的模型”;一丝不苟_Ruby On Rails_Ruby On Rails 3_Model - Fatal编程技术网

Ruby on rails Rails 3:什么是;具有唯一索引列“的模型”;一丝不苟

Ruby on rails Rails 3:什么是;具有唯一索引列“的模型”;一丝不苟,ruby-on-rails,ruby-on-rails-3,model,Ruby On Rails,Ruby On Rails 3,Model,“具有唯一索引列的模型” 这是否意味着只有一个模型和一个列,列上有唯一的验证?还是说该列需要在迁移中添加索引 你能解释一下创建add_索引的确切含义吗。例如,如果您有一个带有名称列的Authors模型。向“name”添加索引有什么作用 谢谢。我认为这意味着模型中有一列保证是唯一的,并且上面有一个索引。我认为您正在阅读Rails中的一般模型 唯一列意味着没有两个模型(如User1和User2)可以具有该列的相同值。例如,用户将具有唯一的登录名。不应存在具有相同登录名(或用户名或电子邮件)的两个用户

“具有唯一索引列的模型”

这是否意味着只有一个模型和一个列,列上有唯一的验证?还是说该列需要在迁移中添加索引

你能解释一下创建add_索引的确切含义吗。例如,如果您有一个带有名称列的Authors模型。向“name”添加索引有什么作用


谢谢。

我认为这意味着模型中有一列保证是唯一的,并且上面有一个索引。我认为您正在阅读Rails中的一般模型

唯一列意味着没有两个模型(如User1和User2)可以具有该列的相同值。例如,用户将具有唯一的登录名。不应存在具有相同登录名(或用户名或电子邮件)的两个用户。但是Rails会自动为模型提供一个始终唯一的ID列。除非您更改它,否则第一条记录的ID将是1,然后是2,然后是3,以此类推

列上的索引意味着更容易找到该列。想想百科全书。里面有很多信息,但是附录(就像索引)可以帮助你快速找到你想要的东西。可能会有一个关键术语的附录,然后它会告诉你在哪里可以快速找到它。这就是列上的索引所做的

因此,Rails中的“具有唯一索引列的模型”在默认情况下是ID列:它是唯一的,并且将自动在其上获取索引以更快地查找记录

额外:当您使用外键创建模型时(例如:模型用户可能有一个性别id,您可能有一个名为“性别”的表,该表定义了男性和女性,并且性别id对应于一个性别对象),那么您应该向该外键添加一个索引,以便更快地对其进行搜索


更多信息:

您能为“具有唯一索引列的模型”提供一些上下文吗?你在哪里看到这个短语?相当模糊-我想很多人会用这个短语来表示独特的约束-意思就是在“简单模型”的顶部的友好id指南中,该列应该是唯一的,