проблема скрепки + vestal_versions - PullRequest
0 голосов
/ 30 августа 2011

Мне нужна помощь в настройке скрепки с vestal_versions. Я следовал этому уроку

http://blog.dmfranc.com/post/1036667709/paperclip-and-vestal-versions

Но когда я пытаюсь загрузить файлы, я получаю эту ошибку

[скрепка] Сохранение вложений. Выполнено 500 Внутренняя ошибка сервера в 626ms

NoMethodError (неопределенный метод `version 'для #):

моя файловая модель принадлежит объектам и зданиям has_menu building_pdf.

class BuildingPdf < ActiveRecord::Base
  belongs_to :building

  has_attached_file :pdf, :keep_old_files => true, :url => "/pdf/:id/versions/:version/:basename.:extension",
  :path => ":rails_root/system/pdf/:id/:version/:basename.:extension"

 Paperclip.interpolates :version do |attachment, style|
   attachment.instance.version.to_s
 end

end

вот мой /lib/initializers/versioning_with_paperclip.rb

module Paperclip
  class Attachment
    def save
      flush_deletes unless @options[:keep_old_files]
      flush_writes
      @dirty = false
      true
    end
  end
end

что еще мне не хватает?

спасибо.

PS. После добавления контроля версий в моей модели я получаю эту ошибку

[paperclip] Saving attachments.
Completed 500 Internal Server Error in 1512ms

Mysql2::Error (Table 'db.versions' doesn't exist):
  app/models/building_pdf.rb:10:in `version'
  config/initializers/versioning_with_paperclip.rb:5:in `save'

1 Ответ

1 голос
/ 30 августа 2011

Вам необходимо добавить (версионно) к вашей модели

class BuildingPdf < ActiveRecord::Base
    versioned

    ..

end
...