Вот пример кода,
/ init .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