我正在尝试一个zappa节点应用程序,但我无法让它超越一个简单的例子。
我有application.coffee
require('zappajs') ->
@set views: "#{__dirname}/views"
@set 'view engine': 'jade'
@use 'bodyParser', 'methodOverride', @app.router, 'static'
@configure
development: => @use errorHandler: {dumpExceptions: on}
production: => @use 'errorHandler'
@get '/': -> @render 'index'
我收到了一个错误。 Zappa似乎在文件名前加上一个guid。
example/app/views/7b16eeab-de6f-41b0-b196-8f23f4b7237d/index.jade
这是完整的跟踪
Error: ENOENT, no such file or directory '/Users/irfn/project/example/app/views/7b16eeab-de6f-41b0-b196-8f23f4b7237d/index.jade'
at Object.fs.openSync (fs.js:338:18)
at Object.fs.readFileSync (fs.js:182:15)
at Object.rethrow (/Users/irfn/project/example/node_modules/jade/lib/runtime.js:155:27)
at parse (/Users/irfn/project/example/node_modules/jade/lib/jade.js:116:13)
at Object.exports.compile (/Users/irfn/project/example/node_modules/jade/lib/jade.js:163:9)
at Function.exports.compile (/Users/irfn/project/example/node_modules/zappajs/node_modules/express/lib/view.js:68:33)
at ServerResponse.res._render (/Users/irfn/project/example/node_modules/zappajs/node_modules/express/lib/view.js:417:18)
at ServerResponse.res.render (/Users/irfn/project/example/node_modules/zappajs/node_modules/express/lib/view.js:318:17)
at Object.zappa.app.app.(anonymous function).apply.concat.render (/Users/irfn/project/example/node_modules/zappajs/lib/zappa.js:593:33)
at Object.zappa.app.app.(anonymous function).apply.concat.ctx.render (/Users/irfn/project/example/node_modules/zappajs/lib/zappa.js:545:31)
以下是我的包json依赖项的设置方法
"dependencies": {
"coffee-script": "1.3.3",
"underscore": ">= 1.3.3",
"stylus": ">= 0.28.2",
"zappajs": ">= 0.3.10",
"jade": ">= 0.18.0"
},
"devDependencies": {
"watchr": "*",
"mocha": "*",
"chai": "*",
"request": "*"
},
答案 0 :(得分:5)
我自己遇到过 - 没有时间追查原因,但有一个简单的解决方法: 而不是
@get / : ->
@render index: {key:value}
使用更老的学校连接式
@app.get '/', (req,res) ->
res.render 'index', {key:value}
希望这可以帮助你克服困难。
PS: 想想看,我认为它可能与zappa默认评估咖啡(k / c)模板的方式有关。在这种情况下,它可能会尝试将该逻辑应用于jade中断。