python - Flask url_for 产生错误的 URL

标签 python flask

flask 中的 url_for 生成器不适用于我的一个 View (它适用于其他 View )。生成器给出 /user/?name=Joe虽然我期待 /u/Joe .

在模板中,我尝试使用以下方法获取用户页面的 URL:{{ url_for('user', name = g.user.name ) }}

这是对应的 View 函数:

@app.route('/u/<name>')
@login_required
def user(name):

起初这是可行的,但有些事情发生了变化。我曾尝试更改 View 名称和 url,但没有成功。

有什么想法吗?我对此一头雾水......

完整的应用程序可在 GitHub 上获得:https://github.com/joehand/weight-and-more-tracker

编辑:@login_required decorated 是 Fl​​ask-login 提供的。

此外,删除 <name>变量不能解决问题。然后 URL 就是 /user .

最佳答案

在 api.py 中,您正在注册一个名称为“user”的 View ,这可能与名为“user”的方法冲突。

关于python - Flask url_for 产生错误的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15909455/

相关文章:

python - Pandas 中正/负后的行数

python - 操作失败: Not authorized on aggregations to execute the command

python - 在 Scrapy 项目中使用 Django 的模型(在管道中)

python - Flask:model_form:AttributeError:类型对象 'Form'没有属性 'query'

python - 我的 .fetchall() 没有在我的 Flask 应用程序上更新?

python - 从 HTML 表单发布值并在 Flask View 中访问它们

python - 为什么我的代码实际上什么也做不了?

python - 无法使用 selenium 和 python 从 html 表中检索链接

python - Flask request.form ["name"] 仅返回一个 token

python - 如何在 flask 中获取http header ?