2012-08-05 21 views
3

我想要一個zappa節點應用程序,我無法讓它工作超越一個微不足道的例子。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": "*" 
    }, 

回答

5

跨越此次來到自己 - 沒有追查原因時但有一個簡單的解決方法: 而不是

@get/: -> 
    @render index: {key:value} 

使用更舊學校接式

@app.get '/', (req,res) -> 
    res.render 'index', {key:value} 

希望這可以幫助你渡過了難關。

PS: 想一想,我認爲它可能與zappa默認評估咖啡(k/c)模板的方式有關。在這種情況下,它可能試圖將這個邏輯應用到玉石中斷。

+1

這樣做的竅門!非常感謝。 – irfn 2012-08-07 00:20:36