2017-02-17 35 views
8

CoffeeScript, NodeJS ve expressJS kullanarak basit bir düzen oluşturmaya çalışıyorum. Benim Kahve komut ben uygulamalara yolları klasörü yeniden adlandırmışnodejs Mizanpaj görünümünde görünüm yok

routes.coffee olduğunu ve benim routes.coffee dosya apps\authentication\routes.coffee

routes = (app) -> 
    app.get "/login", (req , res) -> 
    res.render "#{__dirname}/views/login", 
     title: 'Login', 
     stylesheet: 'login' 
module.exports = routes 

Girişi Görünüm ben yeniden adlandırmış yolları klasörüne yani kimlik doğrulama klasöründe içeride kimlik doğrulama klasör ie orada uygulamalar ve benim giriş görünümüne apps\authentication\views\login.jade

extends ../../../views/layout 

block content 
form(action='/sessions', method='post') 
    label 
     | Username 
     input(type='text', name='user') 
    label 
     | Password 
     input(type='password', name='password') 
    input(type='submit', name='Submit') 

Layout.jade Bu dosya varsayılan görünümler klasöründedir. Ben olsun,

doctype 
html 
    head 
    title= title 
    body 
    #content 
     h1= title 
     block content 

    != body 

i layout.jade yani unvan bu değişkenleri uygulamaya çalıştığınızda

require('coffee-script').register(); 
var express = require('express'); 
var path = require('path'); 
var favicon = require('serve-favicon'); 
var logger = require('morgan'); 
var cookieParser = require('cookie-parser'); 
var bodyParser = require('body-parser'); 

//var index = require('./routes/index'); 
//var users = require('./routes/users'); 

var app = express(); 

// view engine setup 
// app.set('views', path.join(__dirname, 'views')); 
app.set('view engine', 'jade'); 
// app.set('view options', { layout: 'views/layout' }); 
// uncomment after placing your favicon in /public 
app.use(favicon(path.join(__dirname, '/public', 'favicon.ico'))); 
app.use(logger('dev')); 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ extended: false })); 
app.use(cookieParser()); 
app.use(express.static(path.join(__dirname, '/public'))); 
// app.use(express.static('public')); 
app.set('view options', { 
    layout: false 
}); 
//app.use('/', index); 
//app.use('/users', users); 

require('./apps/authentication/routes')(app); 

// catch 404 and forward to error handler 
app.use(function(req, res, next) { 
    var err = new Error('Not Found'); 
    err.status = 404; 
    next(err); 
}); 

// error handler 
app.use(function(err, req, res, next) { 
    // set locals, only providing error in development 
    res.locals.message = err.message; 
    res.locals.error = req.app.get('env') === 'development' ? err : {}; 

    // render the error page 
    res.status(err.status || 500); 
    res.render('error'); 
}); 

module.exports = app; 

Ben, iki değişken title ve ancak routes.coffee yılında stylesheet yarattık app.js varsayılan düzenini kullanıyorum undefined başlıkta başlık olarak.

Herhangi biri yardımcı olabilir mi?

Teşekkürler.

+0

Sorunun kaynağını buldunuz mu? Çünkü bu durumu yansıtmaya çalışıyorum ve ben senin sorununla karşılaşmıyorum .. – piotrbienias

+0

hayır, ben aynı seviyedeyim. – Aqdas

+0

Hey @Aqdas, konsolunuzda herhangi bir iz veya hata var mı? – Lissy

cevap

1

Girintiyi doğru kullanmadığınızı düşünüyorum. senin Girişi Görünümde bu:

extends ../../../views/layout 

block content 
form(action='/sessions', method='post') 
    label 
     | Username 
     input(type='text', name='user') 
    label 
     | Password 
     input(type='password', name='password') 
    input(type='submit', name='Submit') 

olmalıdır:

extends ../../../views/layout 
block content 
    form(action='/sessions', method='post') 
    label 
     | Username 
     input(type='text', name='user') 
    label 
     | Password 
     input(type='password', name='password') 
    input(type='submit', name='Submit') 
+0

Teşekkür @Geethu kopyalayabilirsiniz. – Aqdas

+0

Pleasure @Aqdas –