如何检查从数据库中检索到的数据的数据类型是什么?例如,如果我有一个带有数据库字段“title”的模型@model的实例化,我希望能够编写类似@ model.title.type的东西,并让它返回“String”。 Rails是否有任何内置功能?(Rails)有没有办法检查字段的数据类型?
21
A
回答
33
试试这个:
@model.column_for_attribute('title').type
应该返回:string
,:text
,:integer
等
ActiveRecord的Column类还包括一些其他属性:默认情况下,限制,名称,空,精密,小学,规模,sql_type,类型。
8
在Rails 3中,对于我的模型“Firm”,我会使用Firm.columns_hash
。
Firm.columns_hash["name"].type #returns :string
如果你想通过他们迭代,你会做这样的事情:
Firm.columns_hash.each {|k,v| puts "#{k} => #{v.type}"}
这将输出如下:
id => integer
name => string
max_trade_qty => integer
等。
相关问题
- 1. Mongoid Rails - 有没有办法在保存之前检查字段的数据类型?
- 2. 有没有办法检查模型字段是否被提取?
- 3. 有没有办法检查Generic类是否存在字段?
- 4. 使用C#,有没有办法从查询中检索所有字段,类型和数据?
- 5. 有没有办法在Jinja2中检查上下文变量的数据类型?
- 6. 有没有办法动态检查类型的instanceof?
- 7. 有没有办法同步检查套接字可用数据?
- 8. 有没有办法根据列表中的所有数字来检查数字?
- 9. 有没有办法导入不带字段的记录类型?
- 10. 有没有办法在Django模型中拥有类似字典的字段?
- 11. 有没有办法根据列表更新数据库字段?
- 12. 有没有办法检查AWS上的日常数据传输?
- 13. 有没有办法在函数中定义模型字段?
- 14. 有没有办法改变teradata的数据类型?
- 15. Oracle:有没有办法获得视图的列数据类型?
- 16. 如何检查字段类型是否有?是没有ØNSNull
- 17. 有没有办法来检查方法返回的值的类型?
- 18. 检查scanf(..)成功,而不使用字段数 - 有没有办法?
- 19. 运行FactoryGirl时有没有办法检查DB数据?
- 20. 有没有办法从NSString获取拼写检查数据?
- 21. 有没有办法在Rails中限制模型字段的创建?
- 22. 有没有办法检查request.user ManyToManyField
- 23. 有没有办法检查空目录?
- 24. 有没有办法检查截断表?
- 25. Python to excel有没有办法设置数据类型
- 26. 有没有办法在rails中保持验证字段可选?
- 27. 有没有办法在“未加载”的java类文件中检查类,字段和方法级别的注释?
- 28. 有没有什么办法来检查类的属性在C#
- 29. 有没有办法对数据库中的数据进行拼写检查?
- 30. 检索没有_source字段的数据:
注意还有:名称,精度,主要,null,限制和默认 – 2009-08-10 23:15:23
谢谢,这没有把戏。 – Karl 2009-08-10 23:28:07