我正在尝试使用Flask Blueprints添加动态运行时路由。我正在调用add_url_rule()
并将一些数据传递给视图。
def add_special_route(route_url, data):
myblueprint.add_url_rule(route_url, view_func=my_special_view_function, specialparameter=data)
def my_special_view_function(specialparameter):
return specialparameter.some_string_x
编译器不喜欢特殊参数。错误是unexpected keyword argument
。我期待它进入add_url_rule上的**选项kwargs。
我查看了使用**选项的示例的文档。不多。
我做错了什么?
答案 0 :(得分:2)
视图的默认参数应该在带有defaults
关键字参数的字典中传递:
def add_special_route(route_url, data):
myblueprint.add_url_rule(
route_url, view_func=my_special_view_function,
defaults={'specialparameter': data})