ChatGPT解决这个技术问题 Extra ChatGPT

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


X
Xcodian Solangi

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

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

Source


和 :references 用于多态关联。请参阅:api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/…
指南已更改。也许相关文档的链接应该替换它。
@HarryMoreno:感谢您的提示!我更新了参考,如果您找到更好的参考,请告诉我。
引用不限于多态关联。而且我不会将其视为数据类型。
g
gotqn

不仅要了解类型,还要了解这些类型到数据库类型的映射,这一点很重要:

https://i.stack.imgur.com/Q0j0x.png

https://i.stack.imgur.com/tuRiZ.png

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

旧的 "datetime" 代替 "datetime2" 十进制,其默认精度文本和 varchar 代替 nvarchar int(不可能使用小 int/small int/big int)图像代替 BLOB


this blog 中找到。 tinyint/smallint/bigint 可以通过使用 :limit 选项和 :integer 来设置。我已经在 Rails 3 和 MySQL 上对其进行了测试,它们仍在工作,正如博客中所说,它们是有符号整数。
B
Bill the Lizard

您的意思是定义活动记录迁移吗?还是您的意思是 Ruby 数据类型?

这是一个可能有助于创建迁移的链接:

Orthogonal Thought - MySQL and Ruby on Rails datatypes


C
Community

大致了解这些数据类型的用途可能会有所帮助:

二进制 - 用于存储图像、音频或电影等数据。

boolean - 用于存储真值或假值。

date - 仅存储日期

datetime - 将日期和时间存储到列中。

小数 - 用于小数。

float - 用于小数。 (十进制和浮点数有什么区别?)

integer - 用于整数。

primary_key - 可以唯一标识表中每一行的唯一键

string - 用于标题等小数据类型。 (你应该选择字符串还是文本?)

text - 用于较长的文本数据,例如一段信息。

time - 仅用于时间

时间戳 - 用于将日期和时间存储到列中。

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