sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvorfor fortæller Express mig, at min standardvisningsmotor ikke er defineret?

kilden til fejlen beskriver kravene:

if (!ext && !this.defaultEngine) throw new Error('No default engine was specified and no extension was provided.');

Express forventer, at du enten angiver visningen med dens udvidelse:

res.render('index.html');

Eller angiv en standardvisningsmaskine og navngiv dine synspunkter efter det:

app.set('view engine', 'ejs');

// `res.render('index')` renders `index.ejs`

Angående din redigering:

Problemet er med denne linje:

app.engine('.html', require('ejs').renderFile());

Som dokumentationen viser , app.engine() forventer en function reference. Du kan gøre dette ved blot at fjerne () det opkald renderFile :

app.engine('.html', require('ejs').renderFile);


  1. Mongo $addToSet an Array

  2. Filtrer indlejret array med betingelser baseret på objektværdier på flere niveauer, og opdater dem - MongoDB aggregeret + opdatering

  3. Søger i mongo db ved hjælp af mongoose regex vs. tekst

  4. Sådan bruges variabler med MongoDB $lookup