Je code un site Web comme un blog que nous pouvons ajouter des images et des articles. J'utilise Multer, Mongodb et Multer. Mais je reçois une erreur qui dit
TypeError: impossible de lire la propriété 'Nom de fichier' de non défini sur C: \ Users \ Agul \ Desktop \ Nodejs \ Veritabanä ± \ Routes \ Articles.js: 58: 33 ... P> BlockQuote>
Pour que cela ne puisse probablement pas trouver cette propriété FilenMe, je ne peux pas télécharger mes images. Mais je ne pouvais pas comprendre pourquoi cela ne fonctionne pas. P>
Voici mes codes: P>
Ceci est mon article.js strong> p>
extends layout block content br h1= article.title //h5 Written by #{author} p= article.body img(src='{article.img}', alt='img') hr if user if user.id ==article.author a.btn.btn-default(href='/articles/edit/'+article._id) Edit a.btn.btn-danger.delete-article(href='#',data-id=article._id) Delete
3 Réponses :
Vous devez vérifier si un fichier a été téléchargé avant d'essayer d'accéder à ses propriétés.
if (!req.file) { // return error response } let filename = req.file.filename
Oui je l'ai fait. C'est multipart / forme
Avez-vous ajouté
enctype = "multipart/form-data"
mon add_article.pug est: ...... .FILE-champ-champ.Input (méthode = "post", enctype = "multipart / format-données") .btn.grey span de fichier (nom = 'img' , ENCTYPE = "Multipart / Form-Data", type = 'Fichier') BR ...
Hey je l'ai édité. Pouvez-vous s'il vous plaît regarder à nouveau? (Dans le message principal).
Vous devez ajouter dans la balise de formulaire p> modifier votre code actuel p> dans et retirez du fichier d'entrée p> actuel p> changer dans p> router.use('/static', express.static('public/uploadss'))
Oui, cela résout le problème indéfini, mais j'ai encore une fois bloqué dans la représentation de l'image dans mon article. Pouvez-vous regarder mon post principal à nouveau? Parce que je vais ajouter un fichier article.Prug.
Pouvez-vous aider pls
@ Alperengül s'il vous plaît vérifier ma réponse modifiée. Cela devrait résoudre votre problème