2016-02-25 3 views
1

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

Я добавил его в мой контроллер, используя этот код:

def show 
    @document = Document.find(params[:id]) 

    respond_to do |format| 
     format.html 
     format.pdf do 
     pdf = Prawn::Document.new(@document) 
      send_data pdf.render, filename:"1", 
           type: "application/pdf", 
           disposition: "inline" 
     end 
    end 
    end 

Но с помощью этого я получаю ошибку отсутствующего атрибута. Я предполагаю, что это потому, что моя модель также называется Documents и конфликтует с командой Prawn::Document.new?

Могу ли я просто не иметь модель documents и использовать креветку - или здесь что-то мне не хватает?

ответ

0

Я не думаю, что это примерно Document vs Prawn::Document, но я никогда не видел, чтобы кто-то проходил экземпляр ActiveRecord до Prawn::Document.new. Я думаю, что ожидает хэш-параметров, не так ли? И вызывая render перед тем, как дать ему любой контент, кажется подозрительным. Какова фактическая трассировка стека?

+0

После рассмотрения документации это выглядит не так просто, как передать «@ document» на креветку. Похоже, вы правы, мне нужно строить с нуля, как в RailsCast, эпизод 153. http://railscasts.com/episodes/153-pdfs-with-prawn-revised?autoplay=true. Но это немного тяжелее, что мне нужно было сделать, поэтому я думаю, что я вернусь к исправлению моей проблемы с CSS с помощью PDFkit – PSCampbell