неопределенный метод `has_attached_file error paperclip - PullRequest
1 голос
/ 06 сентября 2011

Я пытаюсь использовать скрепку без направляющих (но пытаюсь подключить дб, созданные направляющими). Использование bundler для запроса драгоценных камней.

вот мои модели

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

Есть идеи? Редактировать : мой драгоценный файл

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/}

Возвращает пустой список.
но когда я открываю консоль rails (используя «rails c»), оператор работает и возвращает значение (оба используют одни и те же гемы)

Ответы [ 2 ]

0 голосов
/ 27 января 2012

имел ту же проблему.

с использованием

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

вместо того, чтобы помочь.

0 голосов
/ 07 сентября 2011

Эта ошибка означает, что гем Paperclip загружен неправильно (или вообще не загружен) в ваше приложение.

Можете ли вы опубликовать свой Gemfile и config / preinitializer.rb?

Работает ли компоновщик для успешной загрузки других Gems в вашу среду?

Я видел, как это происходило, когда Bundler не был правильно настроен для проекта Rails, из-за чего гемы не загружались. Ссылка на модель скрепки - канарейка в угольной шахте для решения этой более крупной проблемы.

...