我正在尝试将一个骨骼模拟的视图添加到最近的蒸气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项目(使用蒸气的新安装),并且行为相同。如此基本的事情无法开箱即用,这似乎很奇怪。
事实证明,尽管液滴的默认渲染器为'leaf',但配置中的默认设置为'static'。放置:
"view": "leaf"
进入Config/drop.json
解决了问题。