2017-02-08 14 views
1

Wenn ein Benutzer eine Datei auf meiner Website hochgeladen ich es möchte ein Bild anzuzeigen Ie auf dem Dateityp abhängig - PNG-Datei hochgeladen es dann Datei mit dem Dateisymbol und Schaltfläche Ansichtangezeigte Icon je nach Dateityp

anzeigt i habe dies zur Zeit in meinem hochladen Modell

public function getIconAttribute() { 

    $extensions = [ 
     'jpg' => 'jpg.png', 
     'png' => 'png.png', 
     'pdf' => 'pdf.png', 
     'doc' => 'doc.png', 
    ]; 

    return array_get($extensions,$this->extension,'unkown.png'); 
} 

und ich habe dies in meiner Ansicht

<img src='../../../public/img/{{ $file->icon }}' style="padding:5px;" class="img-responsive center-block" /> 

im nicht sicher, wie diese Arbeit zu machen, ich habe die Symbole in meinem img Ordner etc i ts nur damit es funktioniert das ist das Problem

+0

Warum haben Sie die Erweiterungen Array innerhalb der Methode? Deklarieren Sie eine geschützte Variable im Modell. – Troyer

+0

weil ich unsicher bin, was ich tue lol –

Antwort

1

Dies kann ziemlich einfach mit css attribute selectors getan werden.

img[src$=".jpg"]:after{ 
 
    content: 'jpg'; 
 
} 
 
img[src$=".png"]:after{ 
 
    content: 'png'; 
 
}
<img src='img.jpg' style="padding:5px;" class="img-responsive center-block" /> 
 
<img src='img.png' style="padding:5px;" class="img-responsive center-block" />

+0

ich versuchte das, aber es funktioniert nicht? –

+0

Es funktioniert aber sicher in meinem Snippet. Ich kann dir nicht helfen, wenn alles was ich habe ist "es funktioniert nicht". –

+0

aye Ihr Schnipsel funktioniert große Entschuldigung, ich habe versucht, den Code, den Sie freigegeben, aber nichts passiert? –