-
19-09-2019 - |
题
我想提出一些模型水平上的验证以下表:
create_table :audios do |t|
t.integer :library_id, :null => false
t.string :file, :null => false, :limit => 2048
t.string :name, :limit => 512
t.timestamps
end
这是不是意味着,我的模型,该模型(至今)看起来像:
class Audio < ActiveRecord::Base
belongs_to :library
end
已
class Audio < ActiveRecord::Base
validates_presence_of :library
...
或
class Audio < ActiveRecord::Base
validates_presence_of :library_id
...
?
解决方案
验证中存在的关联,使用其名称, 没有 _id
附:
validates_presence_of :library
它将验证两件事情:
library_id
是本- 一个
Library
与给予id
存在
使用 validates_presence_of :library_id
只会给你的第一个验证的两个。
除此之外,该版本没有 _id
也将正确地验证,如果这两个记录新的(因此 library_id
仍然是取消).
不隶属于 StackOverflow