0

我的问题是如何找到数据库列的“类型”,文本/字符串之间有什么区别。无论如何我可以找到这个吗?

script/generate scaffold ModelName field1:type field2:type field3:type
or
script/generate scaffold Post title:string body:text category_id:integer
4

3 回答 3

4

这是mysql数据库的列表

:binary     blob
:boolean    tinyint(1)
:date     date
:datetime   datetime
:decimal    decimal
:float   float
:integer    int(11)
:string     varchar(255)
:text     text
:time     time
:timestamp  datetime
于 2010-07-22T06:43:19.383 回答
1

要在 MYSQL 中获取数据库列的类型,请运行:

desc table_name

在 Rails 控制台中,运行 Model.inspect 以获取相应表 attrs 的类型:

 Studio.inspect
=> "Studio(id: integer, name: string, subdomain: string, workdays_mask: integer, created_by: integer, created_at: datetime, updated_at: datetime, workhours: text, template_styles: text, contact_info: text)"
于 2010-07-22T07:14:08.150 回答
0

底层类型实际上取决于数据库本身(和 Rails db 驱动程序实现),但对于 MySQL:

字符串:VARCHAR 默认长度为 255 - MySQL 默认值 - 除非您提供长度/大小(?)值。

文本:TEXT 或 LONGTEXT ( http://dev.mysql.com/doc/refman/5.0/en/blob.html )

于 2010-07-22T03:09:01.593 回答