【发布时间】:2019-08-15 14:49:57
【问题描述】:
我使用 Ruby on Rails 5.2 和 mongoid 7.0
我需要按国家/地区选择大洲
我知道它应该是这样的:
class Place
field :country, type: String
field :continent, type: String
after_save :update_continent
def update_continent
cont = self.country
case cont
when 'United States', 'Grenada'
'NA'
when 'Netherlands', 'Spain'
'EU'
end
self.continent = cont
end
end
【问题讨论】:
-
@jvillian 我想知道我是否朝着正确的方向前进
-
你正在向a方向移动。是否是正确方向很难说。有不止一种方法可以完成您正在尝试做的事情。与另一种方法相比,是什么让一种方法“正确”?这段代码看起来很接近。所以,也许是的,你正朝着正确的方向前进。除了,显然,您将“纽约”和“芝加哥”存储为国家。但是,这更像是一个语义问题而不是句法问题。
-
您还没有告诉我们您的代码是否有效,如果无效,或者发生了什么错误。
标签: ruby-on-rails mongoid