2017-10-24 6 views
0

Ich möchte in der Navigationsleiste einen Avatar des angemeldeten Benutzers angezeigt werden, aber jedes Mal bekomme ich Fehler 404 mit der URL: http://localhost:3000/uploads/avatars/avatar_test3.jpeg mein Mops-Code ist:Anzeige Bild mit Mops/Jade und node.js

ul.nav.navbar-nav.navbar-right 
     if user 
      li 
      a(href='/photos/add') Add photo 
      li 
      a(href='/users/edit') 
       img(src=user.avatar) 
      li 
      a(href='/users/logout') Logout 

user.avatar gibt mir:

  • img(src='../' + user.avatar)
  • : uploads/avatars/avatar_test3.jpeg ich auch mit der versucht haben,
  • img(src='/' + user.avatar)

Der gleiche Fehler jedes Mal

Die Verzeichnishierarchie:

/ 
-uploads 
    -avatars 
     -avatar_test3.jpeg 
    -views 
    -layout/pug //the template I'm using 

Ich habe auch mit Umzug in die avatar_test3.jpeg Datei direkt in das Verzeichnis Ansicht aber ohne versucht Erfolg.

Wie kann ich es lösen?

+0

Was ist ** ** genaue Fehler, die Sie bekommen? Du hast keinen Fehler gepostet, du hast eine URL gepostet. Benutzt du Express? Haben Sie [Verwenden von Vorlagen-Engines mit Express] (https://expressjs.com/en/guide/using-template-engines.html) gelesen? Veröffentlichen Sie den node.js-Code, der tatsächlich funktioniert. – zero298

+0

Es tut mir leid mein Fehler, ich fügte Art des Fehlers hinzu. @Darian hat mir super geholfen – robmax

Antwort

2

Welchen Fehler bekommen Sie? Wenn es http 404, sollten Sie Ihre Uploads Ordner Öffentlichkeit durch express wenden: http://expressjs.com/en/starter/static-files.html

Etwas wie:

app.use('/uploads', express.static('uploads')) 
+0

es funktioniert super! Das habe ich total vergessen, danke! – robmax