在拓展用户管理系统时,需要增加用户忘记密码的找回功能,在完成此功能时,出现了一个不曾注意的问题,关于查询条件的使用:
为了获得用户输入的邮箱地址是否已经注册,需要使用:
users = UserProfile.objcets.filter(email = email)来获得是否有存在该邮箱注册的用户。其中UserProfile是自定义的用户model。
但是程序运行时出现:
错误!
查询资料后,发现即是在UserProfile模型定义时,使用了OneToOne(User)来关联User模型,仍然无法再UserProfile中直接引用User模型的属性。如果需要引用其属性的话,必须使用原模型。
users = User.objcets.filter(email = email)修改后则可以成功