【问题标题】:Is there a way to configure routes hierarchy in Python Flask-RESTFUL?有没有办法在 Python Flask-RESTFUL 中配置路由层次结构?
【发布时间】:2017-04-06 15:32:13
【问题描述】:

假设我有几条路线:

api.add_resource(Customers, "/Customers")
api.add_resource(Customer, "/Customer/<int:customerId>")

现在,客户可以拥有许多与之相关的东西。例如,订单:

api.add_resource(Customers, "/Customers")
api.add_resource(Customer, "/Customer/<int:customerId>")
api.add_resource(Orders, "/Customer/<int:customerId>/Orders")
api.add_resource(Order, "/Customer/<int:customerId>/Order/<int:orderId>")

有没有办法绕过重复“/Customer/”部分?这似乎是多余的并且容易出现拼写错误。

假设我们加入了购物车、喜欢、以前查看过、愿望清单、支持票等...我们可以轻松地一遍又一遍地重复这些信息。

更不用说订单本身可能拥有的任何资源。现在我们正在重复客户和订单路线信息。

有什么办法可以建立某种层次结构:

api.add_resourceToPrevious([oldRoute], [newRouteController], [newRouteToAppendToOld])

【问题讨论】:

    标签: python routes nested-resources flask-restful nested-routes


    【解决方案1】:

    flask 似乎没有内置的方法来做到这一点。但是,您仍然可以使用 Python 功能:

    customer_path = '/Customer/<int:customerID>'
    api.add_resource(Customer, customer_path)
    api.add_resource(Orders, customer_path + '/Orders')
    api.add_resource(Order, customer_path + '/Order/<int:orderId>')
    

    【讨论】:

    • 害怕那个。谢谢。
    • 第一行缺少&gt;
    猜你喜欢
    • 1970-01-01
    • 2017-03-12
    • 1970-01-01
    • 2016-05-31
    • 1970-01-01
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 2020-07-03
    相关资源
    最近更新 更多