2016-04-13 20 views
0

Es ist mir gelungen, Büroklammern herzustellen und meine Bilder hochzuladen, aber aus einem unbekannten Grund kann Rails sie nicht finden, selbst wenn ich es kann. Ich benutze Windows 10 + Rubymine 2016.1, und im Projekt des Baumes, kann ich mehrere Ordner sehen, die von Rubymine in rot gefärbt wurden. Diese Ordner enthalten mein hochgeladenes Bild, aber wenn ich versuche, sie durch meinen Browser zu erreichen oder durch <%= image_tag(@post.image.url(:small)) %> tun, bekomme ich einen 404-StatusBüroklammer - Kein Bild hochgeladen

Folder's visual

Hier ist mein Modell

class Post < ActiveRecord::Base 
    validates_presence_of(:titre, :contenu) 
    has_attached_file :image, :styles => { 
     :large => "400x400>", 
     :medium => "300x300>", 
     :thumb => "100x100#" 
    }, 
    :default_url => "/images/:style/missing.png", 
    :path => ":rails_root/public/system/:class/:attachment/:style/:filename", 
    :url => '/images/:class/:id/:basename.:extension' 
    validates_attachment_content_type :image, :content_type => /\Aimage\/.*\Z/ 
end 

Weiß jemand, Was bedeutet die Farbe, oder wie kann ich meinen 404-Fehler beheben? Vielen Dank im Voraus

UPDATE

Während einige vains Dinge auszuprobieren, habe ich manuell die folgenden in brut HTML:

<img src="/system/posts/images/large/sorry.jpg" alt=""> und mein Bild erschien just fine. Also ich denke, der Pfad von @ post.image.url ist falsch, da es /system/posts/images/000/000/012/medium/nope.jpg Wie kann ich das in meinem Modell?

+0

haben Sie versuchen, den Zugriff auf 'image_tag (@ post.image.url (: mittel))' – uzaif

+0

für den Zugriff auf kleine Sie Modell zu definieren, in – uzaif

+0

Ja, sorry Ich bin dumm, aber ich versuchte es dann mit Medium und Daumen, aber das Ergebnis war das gleiche – Jaeger

Antwort

1

Für Bilder ist kein :small Bezeichner angegeben. Versuchen:

<%= image_tag(@post.image.url(:thumb)) %> 

:path => "#{Rails.root}/public/system/:class/:attachment/:style/:filename" 

Plus Ich glaube nicht, dass es eine Notwendigkeit :url im Modell atatchment Config hinzuzufügen ist.

adaequat für mich mögen:

has_attached_file :image, 
    :styles => { 
      :thumb => "100x100#", 
      :small => "300x300>", 
      :large => "700x700>" 
      },            
      :path => "image/:class/:style/:id.:extension" 
+0

Ich habe Ihre Lösung versucht, es funktioniert nicht, obwohl ich dies in meinem HTML habe: 'Burn heal' – Jaeger

+0

'entfernen : URL Attribut aus Modell –

+0

ya @Jaeger versuchen, URL zu entfernen – uzaif

Verwandte Themen