2017-09-03 27 views
2

我想添加一個骨架模板視圖到最近的Vapor 2應用程序,到目前爲止,只生成與MySQL數據庫的JSON輸出。如果我用下面的最小代碼:蒸氣沒有渲染文件通過葉

get("viewTest") 
    { req in 
     let params = try Node(node: [ "name": "nick"]) 
     return try self.view.make("index",Node(node:params)) 
    } 

文件index.leaf存在於Resources/Views文件夾和文檔建議省略.leaf後綴是好的,但這樣得到:

[Data File Error: unable to load file at path /Users/test/Library/Mobile Documents/com~apple~CloudDocs/Apps/Vapor/testServer/Resources/Views/index] 

但是,如果我明確地在後綴self.view.make("index.leaf",Node(node:params)),該文件的內容輸出沒有被渲染:

#extend("base") #export("body") {#(name)} 

我已經嘗試將代碼直接放入Main.swift中,並且沒有區別並將其放入處理程序中。我也嘗試從零開始創建一個新的Vapor 2項目(使用全新的蒸氣裝置),它的行爲相同。看起來奇怪的是,一些如此基本的東西並不適用。

回答

3

事實證明,雖然Droplet的默認渲染器是'leaf',但Config中的默認設置是'static'。推薦:

"view": "leaf" 

進入Config/drop.json修復了這個問題。

+0

好的工作。你應該'接受'這個答案,所以網站知道它已經解決了。 – tobygriffin

+0

Thanks @tobygriffin - 在打字時我不能再打14個小時。 – Nick