ruby-on-rails - rails : storing datatype in a column?

标签 ruby-on-rails postgresql ruby-on-rails-4

我正在处理一个由两列组成的数据库表 - 一列用于我要存储的所有值转换为字符串。至于另一个,我想存储它们的原始数据类型。

我知道我可以将它们的类型存储在字符串中(例如“string”、“fixnum”等)。但是,当我稍后需要检索和处理该数据时,我将不得不切换类型(我想避免这种情况并能够立即将值转换回其原始类型.) 有什么方法可以存储我们从 .class 调用数据库列中得到的内容吗?如果是这样,列应该是什么类型?

谢谢。

最佳答案

您可以使用 constantize方法。它接受一个字符串并尝试将其转换为常量名称:

"String".constantize   #becomes String

现在,字符串必须正确大写才能工作。如果出现问题,它会抛出错误。使用 safe_constantize使其在失败时返回 nil

关于ruby-on-rails - rails : storing datatype in a column?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32706030/

相关文章:

postgresql - 在 postgresql.conf 中设置什么值以启用 "localhost"和 "127.0.0.1"和 ip 地址?

mysqldump 兼容模式 postgresql 不工作

javascript - 对数组中的每个对象运行 PostgreSQL UPDATE 查询

rspec - 如何为 Controller 的更新操作编写 rspec?

ruby-on-rails-4 - Rails : How do I prepopulate a text field in Rails?

ruby-on-rails - 如何用 Rails 邮件 gem 替换电子邮件中的附件?

ruby-on-rails - Heroku 上的 open-uri 错误

ruby-on-rails - Rspec link_to - 包括确认/数据确认属性导致测试失败

ruby-on-rails - 为轮播存储图像的最佳方式是什么?

ruby-on-rails - 在 Rails 中对同一模型列进行两个关联