我正在嘗試在所有Rails模型上運行快速Rake任務,但尚未能夠調用它們,因爲這段代碼告訴我無法調用方法columns
對一個字符串。將字符串轉換爲Rails Rake任務中的模型
我試過classify
,而不是camelize
現在也沒有任何合作,試圖將在那裏class_eval
爲好,但這麼想的似乎在這裏工作/不知道太多關於它。
task :collect_models_and_field_names => :environment do
models = Dir.glob("#{models_path}/*").map do |m|
m.capitalize.camelize.columns.each { |n| puts n.name }
end
我知道這個工作,所以我不得不模型手動訪問,如果我需要,但我真的不希望這樣做...
Model.columns.each { |c| puts c.name }
@Steph玫瑰和吉里·波斯皮西爾和,當您使用constantize,Rails的告訴我,它預計模型文件來定義模型。這可能與它尚未被調用的事實有關...... – ovatsug25