建立数据库连接的模型的属性列表的方法

时间:2015-04-16 12:27:50

标签: ruby-on-rails ruby-on-rails-4 activerecord

在旧的Rails版本中,可以在控制台中按名称调用Model,并获取所有属性的列表。在新版本中,这是不可能的 - 至少在建立连接之前不会立即:

$ rails c
Loading development environment (Rails 4.2.1)
>> Product
=> Product (call 'Product.connection' to establish a connection)
>> 

我知道这是一个功能,而不是一个bug。我知道一个简单的Product.count会建立连接。我想知道我可以调用哪种方法来接收自动建立与数据库连接的属性列表。我正在寻找这个输出:

=> Product(id: integer, name: string, created_at: datetime, updated_at: datetime)

2 个答案:

答案 0 :(得分:1)

您可以使用column_names返回模型列数组作为字符串,如:

$ rails c
Loading development environment (Rails 4.2.1)
>> Product.column_names
=> ["id", "name", "created_at", "updated_at"]
>> 

columns_hash返回更多信息

答案 1 :(得分:0)

在您的config/application.rb中,您可以建立连接:

console do
   ActiveRecord::Base.connection
end