这是示例代码,
/ 初始化 .py
test_bp = Blueprint("test", __name__) # blueprint for my app
/urls.py
test_bp.add_url_rule('search/', view_func=TestSearch1.as_view('test1'), methods=['POST'])
app.register_blueprint(test_bp, url_prefix=f"/api/v1/")
test_bp.add_url_rule('search/', view_func=TestSearch2.as_view('test2'), methods=['POST'])
app.register_blueprint(test_bp, url_prefix=f"/api/v2/")
当我尝试检查url_map时
>>app.url_map
我得到以下结果
Map([<Rule '/api/v1/search/' (OPTIONS, POST) -> test.test1>,
<Rule '/api/v2/search/' (OPTIONS, POST) -> test.test1>,
<Rule '/api/v2/search/' (OPTIONS, POST) -> test.test2>,
<Rule '/static/<filename>' (OPTIONS, GET, HEAD) -> static>])
为什么'/api/v2/search/'
也与test.test1
映射?
当我调用'/api/v2/search/'
api TestSearch1
而不是TestSearch2