Schienen: how to display image from upload
Ich versuche zu Folgen zusammen mit Ryan Bates CarrierWave Schienen Cast http://railscasts.com/episodes/253-carrierwave-file-uploads, aber einige Dinge haben sich zu verändern schien, da er es machte.
Ryan installiert Trägerwelle auf die Malerei-Klasse
class Painting < ActiveRecord::Base
attr_accessible :gallery_id, :name, :image
mount_uploader :image, ImageUploader
end
und dann, um das Bild anzuzeigen, er tut dies
<%= image_tag painting.image_url%>
Ich gehe davon aus, dass CarrierWave bietet die painting
Methode. Ich installierte Trägerwelle auf der User-Klasse
class User < ActiveRecord::Base
attr_accessible :name, :email, :image
mount_uploader :image, ImageUploader
end
Als ich versuchte, dies zu tun
<%= image_tag user.image_url %>
Bekam ich eine "undefined local variable or method for 'user'"
Fehlermeldung
Als ich versuchte, diese
<%= image_tag User.image_url %>
Bekam ich undefined method
Image: URL' in # Klasse:0x0000010248e560>`
Diese letztere Fehlermeldung überrascht mich, denn wenn ich rake routes
es zeigte mir diese url
image GET /images/:id(.:format) {:action=>"show", :controller=>"images"}
Dies ist der Pfad zum hochgeladenen Bild
/uploads/user/image/3/cadman.png
aber ich kann nicht herausfinden, wie angezeigt, mithilfe einer Rails-Methode (d.h. nicht nur img-src)
- hast du die user-variable ein neues Benutzer-Objekt? Ich weiß, das scheint offensichtlich, aber man weiß ja nie.
- Schienen Gerüst gilt es in der neuen Methode @user = User.neue
- Natürlich, nur die überprüfung, dass Sie an diesem Schritt.
- kein prob, einfach so, dass ich fortsetzen kann, wollen Sie zumindest wissen, wie ich konnte, ein Bild anzuzeigen, das diese Datei wird im Pfad: /uploads/user/image/3/cadman.png
- Sie konnte nur schreiben Sie das image-tag <img src="uploads/user/image/3/cadman.png">Bild</img>
- ja, sorry, das wusste ich, ich meinte mit den Schienen Weg mit image_tag
- Angenommen, Sie versucht
<%= image_tag @user.image_url%>
? - ja das hat es, danke
- Bitte senden Sie als Antwort, damit Michael es akzeptieren können
- danke.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit Instanz-variable
@user
statt der lokalen Variablen (die nicht definiert ist):