首页 > 解决方案 > Django 向不同用户显示自定义 URL

问题描述

如何根据用户 ID 向不同用户显示不同的 URL?例如,当用户登录时,在仪表板中 user_id 为 1 的用户 1 应该有一个带有默认 URL 的按钮,例如https://www.example.com/user_id,这样他的 URL 将是https://www。 example.com/1而 user_id 为 2 的用户 2 应该看到 URL https://www.example.com/2

我不知道我怎么能做到这一点。我需要编辑模型、视图或 URLS 文件吗?我需要添加什么?

非常感谢您的帮助。

标签: pythondjangopython-3.xdjango-modelsdjango-views

解决方案


您需要将用户对象(或只是 user.id)从视图传递到模板(作为基于函数的视图中的参数或为基于类的视图使用上下文处理器)。在模板中添加{% url 'your_view' user.id %}到按钮中的链接。

'your_view' 应该接受 int:user_id 作为参数。


推荐阅读