我是Django的初学者。我需要设置一个网站,每个用户都有一个个人资料页面。我见过django admin。用户的个人资料页面应存储一些只能由用户编辑的信息。谁能指出我怎么可能?任何教程链接都会非常有用。此外,是否有任何django模块,可用于设置用户页面。
答案 0 :(得分:8)
您只需要创建一个可供经过身份验证的用户使用的视图,如果他们正在创建GET
请求,则会返回个人资料编辑表单,或者如果用户的个人资料数据创建了{{1>请求。
大部分工作已经为您完成,因为generic views用于编辑模型,例如UpdateView。扩展它需要的是检查经过身份验证的用户并为其提供要为其提供编辑的对象。这是MTV三元组中的视图组件,它提供了编辑用户个人资料的行为 - POST
模型将定义user profile,模板将离散地提供演示文稿。
所以这里有一些行为可以作为一个简单的解决方案:
Profile
答案 1 :(得分:1)
你可以
AUTH_PROFILE_MODULE='yourprofileapp.ProfileModel'
添加到settings.py 在配置文件编辑视图中,仅允许登录用户编辑自己的配置文件
示例:
@login_required
def edit_profile(request):
'''
edit profile of logged in user i.e request.user
'''
您还可以确保每当创建新用户时,也会使用django的信号创建用户的个人资料
从django文档中了解storing additional information about users