ruby-on-rails – 最佳做法:我应该使用AR模型还是全局哈希静态
发布时间:2020-12-16 20:10:04 所属栏目:百科 来源:网络整理
导读:我在想一个社交网站.我的用户模型应该有一个属性“eyecolor”,可以在具有选择框/下拉列表的视图页面上设置. 我的问题: – 我应该做一个AR模型,还是应该使用一个全局的哈希/常数的数据? “静态模型”有最佳实践吗? 并且如何在没有AR模型的情况下关联以下关
我在想一个社交网站.我的用户模型应该有一个属性“eyecolor”,可以在具有选择框/下拉列表的视图页面上设置.
我的问题: 并且如何在没有AR模型的情况下关联以下关系: u = User.first u.eyecolor ==> 1 (not the eyecolor-string!) 我需要的是eyecolor-string: u = User.first u.eyecolor ==> "brown" 谢谢, 解决方法
您可以创建一个模型来处理您的眼睛颜色逻辑:
class EyeColor COLORS = ['blue','brown','hazel'] attr_accessor :color # Some logic methods... def is_brown? self.color == 'brown' end end 注意:此模型不是Active Record模型,但它确实创建了一个抽象,您正在尝试建模的真实世界对象. 编辑:我也喜欢这种方法,而不是全局哈希,因为它给它组织在EyeColor中的静态定义,而不是浮动在你的程序中,这使得它清楚这个定义在哪里. <%= select :user,:eye_color,EyeColor::COLORS %> 编辑:添加问号到谓词方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |