在活动记录中对字段名称使用“_id”后缀有什么含义?
t.string :foo_id
这总是假定它是“foo”表的外键吗?
使用像
这样的东西会更好吗? t.string :foo_id_value
避免使用rails模糊不清?
这个想法是这个id值与外键无关,可能不一定是唯一的。
答案 0 :(得分:0)
这是一个惯例问题。根据我的经验,除非你做belongs_to :foo
如果你想避免其他开发者的歧义,那么是的,避免它是个好主意。
答案 1 :(得分:0)
您可能会收到一条奇怪的验证消息。
给定一个带有validates :foo_id, :presence => true
验证的Rails 3模型,
当您将foo_id
留空并验证时,
然后你就会收到消息" Foo不能为空白"而不是预期的" Foo id不能为空白"。