2011-09-06 55 views
1

我想使用沒有導軌的回形針(但試圖連接由導軌創建的數據庫)。 使用bundler來要求寶石。未定義的方法`has_attached_file錯誤回形針

這裏是我的模型

class RailsDB < ActiveRecord::Base 
    establish_connection $db_config[:rails_db] 
end 
class VoiceCall < RailsDB 
    belongs_to :campaign 
    set_table_name :voice_calls 

    has_attached_file :sound_file 
    validates_attachment_presence :sound_file 

end 

如果我嘗試運行它引發錯誤

undefined method `has_attached_file 

任何想法y中的程序? 編輯: 我的寶石文件

source "http://rubygems.org" 
gem 'activerecord', '< 3.1', :require => 'active_record' 
gem 'mysql2', '< 0.3' 
gem "paperclip", "~> 2.4" 

我需要使用寶石

require "bundler/setup" 
Bundler.require(:default) 

一個多觀察。我開始irb,需要積極的記錄,然後回形針。並運行這個

p ActiveRecord::Base.methods.select{|m| m =~ /has_attached_file/} 

它返回空列表。
但是當我打開(使用「軌道C」)的聲明工程軌道控制檯和返回值(兩者都使用相同的寶石)

回答

0

此錯誤意味着回形針寶石裝入不正確(或全部)內你的申請。

你可以發佈你的Gemfile和config/preinitializer.rb嗎?

bundler是否能夠在您的環境中成功加載其他Gems?

當Bundler沒有正確配置Rails項目導致gem加載失敗時,我見過這種情況。回形針模型參考文獻是煤礦中用於解決這個較大問題的金絲雀。

0

有同樣的問題。

使用

gem "paperclip", :git => "git://github.com/thoughtbot/paperclip.git"

,而不是幫助了。

相關問題