Rails 3数据类型?


158

在哪里可以找到可在Rails 3中使用的数据类型列表?(例如文本,字符串,整数,浮点数,日期等?),我一直在随机学习新的内容,但我希望有一个可以轻松引用的列表。

Answers:


270

这是所有Rails3(ActiveRecord迁移)数据类型:

:binary
:boolean
:date
:datetime
:decimal
:float
:integer
:primary_key
:references
:string
:text
:time
:timestamp

资源



指南已更改。也许相关文档的链接应该代替它。
哈里·莫雷诺

1
@HarryMoreno:谢谢小费!我更新了参考资料,如果您找到更好的参考资料,请告诉我。
Nicolas Raoul

引用不限于多态关联。而且我不会将其视为数据类型。
Pascal

67

重要的是,不仅要知道类型,而且还要知道这些类型到数据库类型的映射:

在此处输入图片说明

在此处输入图片说明

例如,请注意,在MS SQL Server中,我们正在使用:

  1. 旧的“ datetime”而不是“ datetime2”
  2. 小数点及其默认精度
  3. 文字和varchar代替nvarchar
  4. int(无法使用tiny int / small int / big int)
  5. 图像代替BLOB

2
从此博客中可以找到。可以使用:limit选项和:integer来设置tinyint / smallint / bigint。我已经在Rails 3和MySQL上对其进行了测试,它们仍然可以正常工作,就像博客中所说的那样,它们是有符号整数。
RacsO


16

大致了解这些数据类型用于什么可能会有所帮助:

  • 二进制-用于存储图像,音频或电影等数据。
  • 布尔值-用于存储true或false值。
  • 日期-仅存储日期
  • datetime-将日期和时间存储到列中。
  • 小数-用于小数。
  • float-用于小数。(十进制和浮点数有什么区别?
  • 整数-用于整数。
  • primary_key-可以唯一标识表中每一行的唯一键
  • 字符串-用于小数据类型,例如标题。(您应该选择字符串还是文本?
  • 文本-​​用于较长的文本数据,例如一段信息。
  • 时间-仅用于时间
  • 时间戳-用于将日期和时间存储到列中。

希望对您有所帮助!另外,这是官方列表:http : //guides.rubyonrails.org/migrations.html#supported-types

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.