У вас путь к шаблонам прописан в папку views. Убедитесь, что эта папка существует в корне проекта и что ваш courses.jade лежит в этой папке.
|
А, ешкин кот. Вот это:
app.get('/', routes.index);
app.get('/courses', function(req, res){
res.render('courses.jade');
});
Должно быть перед еррорХендлером. |
Спасибо, огромное! Ты настоящий друг!:) Помог!!! +99999999999 в карму!
|
Только смотри: если все мои файлы находятся в папке views, то все работает. Но если в папке views есть папка tabs (в ней file.jade) и файл index.jade, то как мне правильно поставить путь к file.jade?
Что писать тут: a(href='ЧТО ПИСАТЬ ТУТ?', style='color: white;') Ссылка Что писать тут:
app.get('ЧТО ПИСАТЬ ТУТ?', function(req, res){
res.render('ЧТО ПИСАТЬ ТУТ?');
});
// development only
if ('development' == app.get('env')) {
app.use(express.errorHandler());
}
|
Путь к шаблонам задан вот здесь -
app.set('views', path.join(__dirname, 'views'));
- от этого места и отсчёт. Соответственно:
res.render('tabs/file');
Что написано в строке запроса - не имеет значения. На клиенте написано href="/gfgfgfgfgfg" - на сервере то же самое - app.get('/gfgfgfgfgfg', ... Тут главное - придумывать что-нибудь разумное и соответствующее по смыслу, чтоб самому же и удобно было. Шаблоны можно делить на слои (layouts) и миксины (mixins). Поэтому обычно создают папку templates, а в ней папки layouts, mixins и views, путь указывают так -
app.set('views', path.join(__dirname, 'templates/views'));
- а уж отсюда подгружаются - типа extends ../layouts/defaultи т.д. - составные части каждой страницы. А при рендеринге расширение и не нужно - res.render('bla'); |
А, и все эти index тут не работают. Шаблонизатору до фени имя index, никакого приоритета оно не имеет. Какое имя написано в коде - res.render('blabla'); - тот файл и рендерится. Написано res.render('index') - будет index.jade
Ноде - не до фени: увидит в указанной папке файл index.js - будет его исполнять автоматически. |
Я кое-что попробовал и справил выше.
|
Cannot GET /tabs/courses
Вот что пишет! Не понимаю в чем ошибка |
Хе. Догадываюсь, что эта строчка написана в запросе, в аргументе тэга - href="/tabs/courses"
Но я не медиум, конечно. Если это так, то перечитайте внимательно мой предыдущий камент. В Ноде есть одна замечательная вещь (тут много замечательных вещей, но и эта тоже): pathname запроса не связан непосредственно с обработчиком этого запроса. С в строке запроса чего-то написано, но обработчику безразлично - чего там написано. Он просто прикручен к этому "чего-то" в качестве обработчика в этой вот строчке после запятой
app.get('/hfhgjhlj/gfhf', ... ...);
но ему всё равно, чего там написано. |
| Часовой пояс GMT +3, время: 10:13. |