这篇博客详细介绍了在美团项目中实现登录逻辑的过程,包括使用rest_framework和app应用,数据库设置,时区处理,用户模型定义以及authentications.py和views.py中的逻辑。在开发过程中遇到'AttributeError: 'str' object has no attribute 'decode''的问题,作者通过分析Python 3.5和Python 2.7在解码方面的差异,找到了解决方案,即去掉decode('utf8'),并提供了关于字符串和字节流转换的编码解码技巧。
from django.db import models
from django.contrib.auth.models import AbstractBaseUser,PermissionsMixin,BaseUserManager
from shortuuidfield import ShortUUIDField
class UserManager(BaseUserManager):
def _create_user(self,telephone,username,password,**kwargs):
if not telephone:
raise ValueError("请传入手机号码!")if not username:
raise ValueError("请传入用户名!")if not password:
raise ValueError("请输入密码!")
user