【问题标题】:Rails, string or integer values in status-column in dbdb中状态列中的Rails,字符串或整数值
【发布时间】:2011-03-20 00:28:25
【问题描述】:

我有一个具有状态属性的事件模型,我想知道是否应该将其设置为字符串或整数字段。 该事件可以具有三种不同的状态,“正在收集”、“活动”或“关闭”。 如果我应该使用整数解决方案,我是否应该在某个地方定义一个常量,以便可以只使用 CLOSED insted of "2"(我应该把这个常量放在哪里??)

提前致谢!

【问题讨论】:

    标签: ruby-on-rails database-design activerecord rails-models


    【解决方案1】:

    我建议使用整数有两个主要原因。

    1. 大多数数据库查询和索引整数列的速度比字符串快。
    2. 查询大型数据集时,它占用的磁盘空间和网络空间更少。

    天气你选择字符串或整数,你应该将它们定义为常量,并且只能通过它们的常量来引用它们。永远不要直接使用这些值。

    http://en.wikipedia.org/wiki/Magic_string_(programming)

    【讨论】:

    • 我应该在哪里定义它们以使它们随处可用(控制器、视图、观察者等等..)?
    • 我想这个状态存储在模型中,在那里定义它。 IE。事件::CLOSED。
    猜你喜欢
    • 1970-01-01
    • 2017-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多