今天填了两个坑。
1, Post 创建文章。Article
database Model结构为:
1 | final class Article: Model, Content { |
在Article
database model中, 我创建了一个父关系category
, 但这个项目中,我并不打算让每篇文章都有一个类别,所以我把父关系设置为可选类型。但是post的时候并不能把category
这个字段省略,请求的格式必须这样:
1 | { |
是不是很不合理?前端拿到这个API会比较迷惑,组建json的时候,这个字段没有值,不能不写这个key-value pair, 也不能写成category:null
。社区中大神给出的方案是用一个不含category
字段的结构体先接收,然后再转成database mode
的样子。具体解释请参考这里
2, Leaf渲染。Vapor4的文档还没有出,Leaf的定义也与Vapor3有很大的改变,这就难为死我了。这种情况下,只能去扒一扒Test里面写的测试用例了。坑如下:
1 | <p>#(title)</p> |
遍历打印文章是打印不到的。必须是打印文章的属性,如下写法是正确的:
1 | <p>#(title)</p> |
填坑完毕。