rails 设置关联的默认值
rails set default value for association
在我的第一个 Rails (5) 应用程序中,我想在创建时为关联设置一个默认值。已阅读有关 SO 的文档和许多问题,但仍找不到答案。
我使用 after_initialize :set_default_values
并希望为 documenttype
设置默认值
def set_default_values
unless persisted?
self.documenttype || 1 if self.documenttype.nil?
self.dateformat ||= 'dd.mm.yyyy' if self.dateformat.nil?
end
end
我认为你在这里缺少一个 =
:
self.documenttype || 1 if self.documenttype.nil?
应该是
self.documenttype ||= build_documenttype
或特定文档类型:
self.documenttype ||= Documenttype.find(1)
编辑:
在评论 OP 中提到 documenttype
是一个 has_one
协会。
在我的第一个 Rails (5) 应用程序中,我想在创建时为关联设置一个默认值。已阅读有关 SO 的文档和许多问题,但仍找不到答案。
我使用 after_initialize :set_default_values
并希望为 documenttype
def set_default_values
unless persisted?
self.documenttype || 1 if self.documenttype.nil?
self.dateformat ||= 'dd.mm.yyyy' if self.dateformat.nil?
end
end
我认为你在这里缺少一个 =
:
self.documenttype || 1 if self.documenttype.nil?
应该是
self.documenttype ||= build_documenttype
或特定文档类型:
self.documenttype ||= Documenttype.find(1)
编辑:
在评论 OP 中提到 documenttype
是一个 has_one
协会。