2017-01-29 3 views
0

я искал в креветкой о макете страницы в креветкой и он показал этомакет страницы на креветкой неспособной установить внутри класса

pdf = Prawn::Document.new(:page_size => "A4", :page_layout => :landscape) 

pdf.text оленья кожа ничего

печати, но когда я пытаюсь это я» м становится неопределенным метод

page_layout :landscape 

добавлен после того, как супер()

это весь мой код

class ProductPdfGenerate < Prawn::Document 
    require 'open-uri' 
    def initialize(order_items) 
     super() 
     @document = Prawn::Document.new(:page_size => "A4", :page_layout => :landscape) 
     @order_items = order_items 
     @order_items.each_with_index do |oi, i| 
      if oi.case.present? && Model.where(magento_model_id: oi.case.model_id).first.present? 
       style_image = oi.case.image_preview.url(:custom_image) 
       model = Model.where(magento_model_id: oi.case.model_id).first 
       # image open(style_image), width: "200".to_f, height: "400".to_f 
       image open(style_image), width: "#{model.aspect_ratio_width.to_f/2.54*72}".to_f, height: "#{model.aspect_ratio_height.to_f/2.54*72}".to_f 
       text "\n \n \n" 
       text "Model: #{model.name}" 
       text "Model Category: #{model.category_type}" 
       text "Style: #{oi.case.style.try(:name)} " 
       text "Order Id: #{oi.order_id}" 
      else 
       image open("https://s3.ap-south-1.amazonaws.com/take-my-order/default/missing.png") 
      end 
     end 
    end 
end 

ответ

0

Попробуйте этот синтаксис, который работает для моего кода:

def initialize(order_items) 
    super :page_size => "A4", :page_layout => :landscape 
    @order_items = order_items 
... 
Смежные вопросы