首页 > 解决方案 > 不处理只有一个参数的 Flask url

问题描述

我的sample.pyx文件包含

@app.route('/<lang_code>/')
def index(lang_code):
    return "language: " + lang_code

但是当我导航到http://127.0.0.1:5000/en/

我收到 500 错误:

File "c:\code\flask\venv363\lib\site-packages\flask\app.py", line 1936, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
TypeError: index() takes no keyword arguments

我已经尝试了 2 个参数并且它有效

标签: pythonflaskcython

解决方案


您需要按照此处always_allow_keywords的建议设置选项

from setuptools import setup
from Cython.Build import cythonize

setup(
    name='main flask app',
    ext_modules=cythonize("sample00.pyx", compiler_directives={'always_allow_keywords': True}),
    zip_safe=False,
)

推荐阅读