Rails5 如何重构 find_or_create_by
Rails5 how to refactor a find_or_create_by
我有一些旧代码正在尝试移植到 Rails 5(原因)
而我 运行 喜欢这个....
def vol_event_for_date(date)
VolunteerEvent.find_or_create_by_description_and_date("Roster ##{self.id}", date)
end
def vol_event_for_weekday(wday)
VolunteerDefaultEvent.find_or_create_by_description_and_weekday_id("Roster ##{self.id}", wday)
end
我是从 post 上看到的 S.O 知道的。 find_by thingie 是某种过时的 Rails 帮手所以我的问题是......我如何为 Rails 5.0.7 应用程序重构它?
更改实际上非常简单,如 Rails 4 Active Record Deprecations
中所述
find_or_create_by_...
can be rewritten using find_or_create_by(...)
.
VolunteerEvent.find_or_create_by_description_and_date("Roster ##{self.id}", date)
刚改成
VolunteerEvent.find_or_create_by(description: "Roster ##{self.id}", date: date)
我有一些旧代码正在尝试移植到 Rails 5(原因)
而我 运行 喜欢这个....
def vol_event_for_date(date)
VolunteerEvent.find_or_create_by_description_and_date("Roster ##{self.id}", date)
end
def vol_event_for_weekday(wday)
VolunteerDefaultEvent.find_or_create_by_description_and_weekday_id("Roster ##{self.id}", wday)
end
我是从 post 上看到的 S.O 知道的。 find_by thingie 是某种过时的 Rails 帮手所以我的问题是......我如何为 Rails 5.0.7 应用程序重构它?
更改实际上非常简单,如 Rails 4 Active Record Deprecations
中所述
find_or_create_by_...
can be rewritten usingfind_or_create_by(...)
.
VolunteerEvent.find_or_create_by_description_and_date("Roster ##{self.id}", date)
刚改成
VolunteerEvent.find_or_create_by(description: "Roster ##{self.id}", date: date)