0
我想提出一個耙子任務:編程方式查詢通過活動記錄數據庫表中rake任務
task :populate => :environment do
table_array = ActiveRecord::Base.connection.tables #=> ["types","products"]
table_array.each do |t|
puts t
instance_string = t.capitalize.singularize.to_s #=> "Type" (on the first loop)
puts Type.column_names #=> ["id", "type_name", "created_at", "updated_at"]
# This will return an error, undefined method 'column_names'
puts "#{instance_string}".column_names
end
end
現在,儘管有「類型」的一個實例字符串(第一循環),我可以」用它來編程查詢數據庫。看起來,常量不能以與實例變量和局部變量相同的方式進行評估。我如何以編程方式創建一個列名稱數組?
hmm..it的排序工作,但我得到**未初始化的常量類型**錯誤,我認爲這意味着恆不從其數據庫中獲取其屬性表?這是我正在處理的一個耙子任務,但Active Record正在運行,那麼爲什麼會發生這種情況呢? – Starkers
**未初始化的常量類型**意味着'Type'類未在該範圍內定義,'Type.column_names'是否在相同範圍內工作? – tihom
是的,不知道我做錯了什麼。所有工作現在,謝謝! – Starkers