Python crea un sistema inteligente de exámenes para campus

Descripción del código fuente

Un sistema de examen de campus desarrollado con django, con funciones completas, usando Redis para el almacenamiento en caché, y el inicio de sesión de WeChat, etc.

Descarga del código fuente del campus inteligente:

81854b67514901b70c1827917bd036b2.png

Mantenga presionado el código QR izquierdo durante 2 segundos

Responde a " sabiduría " para obtener el código fuente

(Asunto no principal)

1. Efecto de operación

7f3f3075bf56499f4be73caf51459255.png

f5fb30d8cfc8a604616092141e2845da.png

8dfd04f7c70059f3162899a8b68d2ad8.png

d4d4ab3817b1697dd3660dffea3eb846.png

2. Parte del código de muestra

e96e54bd43fcf9c17ac9c758e9310396.png

def registry_biz(request):
    email = request.POST.get('email', '')  # 获取填写的邮箱
    name = request.POST.get('name', '')  # 获取填写的机构名
    username = request.POST.get('username', '')  # 获取填写的机构联系人
    phone = request.POST.get('phone', '')  # 获取填写的手机号
    ctype = request.POST.get('type', BusinessAccountInfo.INTERNET)  # 获取机构类型
    flag = int(request.POST.get('flag', 2))  # 获取一个标记位,代表用户是创建新用户还是使用绑定老用户的方式
    uname = email.split('@')[0]  # 和之前的注册逻辑没什么区别,创建一个账户名
    if not User.objects.filter(username__exact=name).exists():
        final_name = username
    elif not User.objects.filter(username__exact=uname).exists():
        final_name = uname
    else:
        final_name = email
    if flag == 2:  # 如果标记位是2,那么将为他创建新用户
        user = User.objects.create_user(
            username=final_name,
            email=email,
            password=settings.INIT_PASSWORD,
            is_active=False,
            is_staff=False
        )
    if flag == 1:  # 如果标记位是1,那么为他绑定老用户
        try:
            user = User.objects.get(email=email)
        except User.DoesNotExist:
            return json_response(*UserError.UserNotFound)
    pvalues = {
        'phone': phone,
        'name': final_name,
        'user_src': Profile.COMPANY_USER,
    }
    profile, _ = Profile.objects.select_for_update().get_or_create(email=email)  # 获取或创建用户信息
    for k, v in pvalues.items():
        setattr(profile, k, v)
    profile.save()
    bizvalues = {
        'company_name': name,
        'company_username': username,
        'company_phone': phone,
        'company_type': ctype,
    }
    biz, _ = BusinessAccountInfo.objects.select_for_update().get_or_create(  # 获取或创建机构账户信息
        email=email,
        defaults=bizvalues
    )
    return json_response(200, 'OK', {  # 响应JSON格式数据,这个标记位在发送验证邮件的时候还有用
        'name': final_name,
        'email': email,
        'flag': flag
    })

Descarga del código fuente del campus inteligente:

1c7cbdab6f57cbedfa43b05b3abf2c84.png

Mantenga presionado el código QR izquierdo durante 2 segundos

Responde a " sabiduría " para obtener el código fuente

(Asunto no principal)

Supongo que te gusta

Origin blog.csdn.net/bigzql/article/details/122678080
Recomendado
Clasificación