【问题标题】:How can I get the datatype of an attribute from a Rails model?如何从 Rails 模型中获取属性的数据类型?
【发布时间】:2013-05-01 15:21:47
【问题描述】:

我在 Rails 项目中使用 Postgres,我发现我需要将所有 varchar 数据类型更改为 citext。我不想手动执行此操作,而是只想创建一个迁移,循环遍历所有模型及其属性并根据需要进行转换。

这些模型中的大多数都是空的,因此不需要实例化它们。我需要确定 ActiveRecord 是否“知道”其对应数据库列的数据类型。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 activerecord ruby-on-rails-3.2 rails-activerecord


    【解决方案1】:
    @model.column_for_attribute('title').type
    

    这可能就是你要找的。​​p>

    【讨论】:

    • 关闭,但您将获得奖品,因为您将我送到正确的方向。我正在寻找数据库数据类型,column_for_attribute.public_methods 告诉我有一个 sql_type 方法,这正是我正在寻找的!
    猜你喜欢
    • 1970-01-01
    • 2015-04-12
    • 2020-01-29
    • 1970-01-01
    • 2013-11-07
    • 1970-01-01
    • 1970-01-01
    • 2015-08-23
    • 2014-05-04
    相关资源
    最近更新 更多