首页 > 解决方案 > 如何从 django 中的自定义用户模型中获取用户数据?

问题描述

这是我的用户模型。

class User(models.Model):
    user_id = models.AutoField(primary_key=True)
    user_email = models.CharField(max_length=100)
    user_password = models.CharField(max_length=15, default=None)

    def __str__(self):
        return self.user_email

这是我的用户模型视图。

def userdetails(request):

    username = request.user.get_username()
    password = request.user.get_password()

    users = User.objects.get(user_email=username)
    user_list = {
        'users': users
    }
    if request.user.check_password(password):
        print(password)
        return render(request, 'userdetails.html', user_list)
    else:
        return render('/', {'user': request.user.username}) # I dont know what this line is doing

这是我的模板。

<form class="form-signin" method="POST" action="{% url 'login' %}">
        {% csrf_token %}

        <h1 class="h3 mb-3 font-weight-normal">Login</h1>

        <div class="mt-3"></div>


        {{ form.username.label_tag }}
        {{ form.username }}

        <div class="mt-3"></div>

        {{ form.password.label_tag }}
        {{ form.password }}

        <div class="mt-3"></div>

        {{ form.errors }}


        <button class="btn btn-sm btn-primary" type="submit">Sign in</button>

    </form>

我无法从登录模板中获取用户数据。有没有办法使用当前的用户模型?

标签: pythondjango

解决方案


推荐阅读