我有下面的类继承自flask-restplus.Resource。
class Patient(Resource):
""" Patient endpoint."""
@clinic_api_ns.route("/patient/add/")
def post(self):
# TODO: add a patient.
return {}
@clinc_api_ns.route("/patient/<string:name>")
def get(self, name):
# TODO: get a patient record
return {}
我想从以上实现2个端点,但是不起作用 它会引发错误:
/site-packages/flask_restplus/api.py”,第287行,在_register_view中 resource_func = self.output(resource.as_view(endpoint,self,* resource_class_args,AttributeError:'function'对象没有属性'as_view'
答案 0 :(得分:1)
您需要在类上使用装饰器,而不要使用函数。
您API将击中相同的端点“/患者”,并且该方法将确定哪个函数被调用。获取,发布,放置和删除。
如果您需要不同的API端点则需要2个资源类,一个用于每个路径。
答案 1 :(得分:0)
据我了解,.route()
decorators仅可用于Resource
类,而不能用于它们的方法。您必须定义两个单独的资源-与in the full example in the docs的Todo
和TodoList
的定义类似。