1
我刚刚开始研究一个新的rails项目,并且我注意到以前的开发人员使用字符串而不是符号作为枚举的键。示例如下:Rails枚举符号与字符串
enum event_type: {
'Tournament' => 1,
'Practice Game' => 2
}
我只是好奇使用字符串而不是符号的可能的优点/缺点。
我刚刚开始研究一个新的rails项目,并且我注意到以前的开发人员使用字符串而不是符号作为枚举的键。示例如下:Rails枚举符号与字符串
enum event_type: {
'Tournament' => 1,
'Practice Game' => 2
}
我只是好奇使用字符串而不是符号的可能的优点/缺点。
不要紧,因为Enum
是在数据库中的一个整数,并且
返回映射暴露的映射是通过一类方法与使用复数 属性名,其在
HashWithIndifferentAccess
所以无论你使用的字符串或符号两个以下将工作:
MyModel.event_types[:Tournament]
MyModel.event_types['Tournament']
正如@AndreyDeineko在他的回答中指出,在这种情况下无关紧要。也许你想阅读[这个问题](http://stackoverflow.com/questions/16621073/when-to-use-symbols-instead-of-strings-in-ruby)以更好地理解字符串和符号。 –