random password

This commit is contained in:
caoqianming 2020-09-25 17:27:46 +08:00
parent 722197f22e
commit 701bc201d6
2 changed files with 20 additions and 14 deletions

View File

@ -94,9 +94,6 @@
<el-table-column label="限制范围">
<template slot-scope="scope">{{ scope.row.xzfw }}</template>
</el-table-column>
<el-table-column label="限制范围">
<template slot-scope="scope">{{ scope.row.xzfw }}</template>
</el-table-column>
<el-table-column label="创建日期">
<template slot-scope="scope">{{ scope.row.create_time.substring(0,10) }}</template>
</el-table-column>

View File

@ -6,7 +6,8 @@ from django.core.cache import cache
from django.http import request
from django_filters.rest_framework import DjangoFilterBackend
from rest_framework import status
from rest_framework.decorators import action, authentication_classes, permission_classes
from rest_framework.decorators import (action, authentication_classes,
permission_classes)
from rest_framework.filters import OrderingFilter, SearchFilter
from rest_framework.mixins import (CreateModelMixin, DestroyModelMixin,
ListModelMixin, RetrieveModelMixin,
@ -17,19 +18,18 @@ from rest_framework.response import Response
from rest_framework.views import APIView
from rest_framework.viewsets import GenericViewSet, ModelViewSet
from rest_framework_simplejwt.tokens import RefreshToken
from utils.queryset import get_child_queryset2
from .filters import UserFilter
from .models import (Dict, DictType, Organization, Permission, Position, Role,
User, File, Message)
from .models import (Dict, DictType, File, Message, Organization, Permission,
Position, Role, User)
from .permission import RbacPermission, get_permission_list
from .permission_data import RbacFilterSet
from .serializers import (DictSerializer, DictTypeSerializer,
from .serializers import (DictSerializer, DictTypeSerializer, FileSerializer,
OrganizationSerializer, PermissionSerializer,
PositionSerializer, RoleSerializer,
UserCreateSerializer, UserListSerializer,
UserModifySerializer, FileSerializer)
UserModifySerializer)
logger = logging.getLogger('log')
# logger.info('请求成功! response_code:{}response_headers:{}response_body:{}'.format(response_code, response_headers, response_body[:251]))
@ -42,14 +42,16 @@ class LogoutView(APIView):
def get(self, request, *args, **kwargs): # 可将token加入黑名单
return Response(status=status.HTTP_200_OK)
import random
import smtplib
import string
from email.header import Header
from email.mime.text import MIMEText
from email.utils import formataddr
from email.header import Header
import random
from rest_framework_simplejwt.tokens import RefreshToken
def get_tokens_for_user(user):
refresh = RefreshToken.for_user(user)
return {
@ -57,6 +59,8 @@ def get_tokens_for_user(user):
'access': str(refresh.access_token),
}
import datetime
class Login2View(APIView):
authentication_classes = []
permission_classes = []
@ -227,13 +231,14 @@ class UserViewSet(ModelViewSet):
return UserListSerializer
return UserModifySerializer
def create(self, request, *args, **kwargs):
# 创建用户默认添加密码
password = request.data['password'] if 'password' in request.data else None
if password:
password = make_password(password)
else:
password = make_password('0000')
password = make_password(''.join(random.sample(string.ascii_letters + string.digits, 8)))
serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True)
serializer.save(password=password)
@ -278,9 +283,13 @@ class UserViewSet(ModelViewSet):
}
return Response(data)
from rest_framework.parsers import MultiPartParser, JSONParser, FileUploadParser
from .mixins import CreateModelAMixin
from django.conf import settings
from rest_framework.parsers import (FileUploadParser, JSONParser,
MultiPartParser)
from .mixins import CreateModelAMixin
class FileViewSet(ModelViewSet):
"""
文件增删改查