添加路线到Vapor,Swift的资源?

时间:2016-11-29 08:24:03

标签: swift rest vapor

我有一个Stall Resource,我的StallController继承了ResourceRepresentable

我可以执行/stalls/以获取所有Stall s,/stalls/1以获取ID 1的Stall,但我想以这样的方式添加路由:我/stalls/1/products我可以获得ID为Stall的所有产品。

如何将路线添加到Resource

1 个答案:

答案 0 :(得分:3)

不幸的是,Vapor目前还没有内置的嵌套资源支持。我正在努力实现这一目标,并很快就会向主项目开放PR。

在此之前,要创建/stalls/1/products之类的路线,您可以执行以下操作:

drop.get("stalls", ":stallID", "products") { req in
    return ...
}

同样,如果你想创建一个像/stalls/1/products/3/stocks这样的路线,你会写:

drop.get("stalls", ":stallID", "products", ":productID", "stocks") { req in
    return ...
}

当然,您可以为所有受支持的HTTP方法执行此操作。