3

私はプログラミングに比較的慣れていないので、これが私の最初の質問です。

エビで画像をレンダリングしようとすると、次のエラーが発生します。

ArgumentError in PropertiesController#show

/uploads/property/image/1/DSC_1749.JPG not found

Rails.root: /Users/Guest/Code/list

私のコード

class PropertyPdf < Prawn::Document

def initialize(property)
  super(top_margin: 70)
  @property = property
  building_heading
  spacing
  building_info
  spacing2
  offer
  spacing2
  offer2
end

def building_heading
  text "#{@property.building_name}", size: 30, style: :bold
  text "#{@property.comment}", size: 23, style: :italic
  building_photo = "#{@property.image_url}"
  image building_photo, height: 200, width: 200
end

end

Show Controller の関連セクション:

respond_to do |format|
     format.html # show.html.erb
     format.json { render json: @property }
     format.pdf do
           pdf = PropertyPdf.new(@property)
           send_data pdf.render, type: "application/pdf",
                                 disposition: "inline"
     end
end
4

1 に答える 1

5

urlの代わりにファイル システムパスを使用する必要があります。CarrierWave や Paperclip などのファイル アップロード gem を使用していると思います。試す

building_photo = @property.image_path

また

building_photo = @property.image.path
于 2013-06-13T23:17:05.133 に答える