2015-06-24 2 views
0

Это структура моего проекта.Не удается просмотреть вид в Express

приложение
  -controllers
      index.server.controller.js
  -моделей
  -routes
        index.server.routes.js
  Видом
          index.ejs
конфигурации
  -express.js

Я установил каталог просмотра в моем express.js файле:

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

И это в моем файле контроллера:

exports.render = function(req,res) { 
res.render('index' , { 
    title: 'welcome to this page' 
}) 
}; 

Всякий раз, когда я открываю localhost, я получаю

Ошибка: не удалось просмотреть «индекс» в каталоге представлений «../app/views/»

ответ

0

Вы даете ему неправильный путь. Попробуйте это

app.set('views', __dirname + '/../app/views'); 
+0

Это сработало, но я все еще не понимаю, как это был неправильный путь. Iv использовал путь: require ('../ app/routes/index.server.routes.js') (приложение); в том же файле express.js, и он работает. –

+0

__dirname даст вам путь к текущему исполняемому файлу, который в вашем случае является express.js. Не устанавливая __dirname, ваш компьютер не имеет понятия, с чего начать поиск вашей папки приложений/представлений. –

+0

Но как это работает в случае require ('../ app/routes/index.server.routes.js') (приложение); в том же файле. Я думал .. возвращается один каталог. –

 Смежные вопросы

  • Нет связанных вопросов^_^