Python 检查用户是否已在Django 2.0中注册

Python 检查用户是否已在Django 2.0中注册,python,django,Python,Django,目前,管理员(超级用户)正在创建用户,并通过电子邮件向用户发送详细信息以及重置密码链接。用户将单击重置密码链接并更改密码 现在管理员必须知道用户在重置密码后是否已登录系统。管理员必须被通知为用户活动(用户已登录)或非活动(用户尚未登录) 我是Django新手,不知道如何确定用户是否登录 在Ralf建议之后,这就是我的代码的外观 我已经为is_寄存器指定了一个默认值False,并且在html中显示为非活动。用户登录后,必须将非活动状态更改为活动状态 models.py 烦躁 user.html {

目前,管理员(超级用户)正在创建用户,并通过电子邮件向用户发送详细信息以及重置密码链接。用户将单击重置密码链接并更改密码

现在管理员必须知道用户在重置密码后是否已登录系统。管理员必须被通知为用户活动(用户已登录)或非活动(用户尚未登录)

我是Django新手,不知道如何确定用户是否登录

在Ralf建议之后,这就是我的代码的外观
我已经为is_寄存器指定了一个默认值False,并且在html中显示为非活动。用户登录后,必须将非活动状态更改为活动状态

models.py

烦躁

user.html

{RegisteredUsers%中RegisteredUsers的%
{{RegisteredUser.first_name}
{{RegisteredUser.last_name}
{{RegisteredUser.email}
{%if RegisteredUser.is_active%}
活跃的
{%else%}
不活跃的
{%endif%}
{%if RegisterUser.is_register%}
活跃的
{%else%}
不活跃的
{%endif%}

尽管用户已登录,但我仍然在html页面上看到注册表处于非活动状态。

Django
用户
模型有一个名为的
日期时间字段

您可以使用此字段获取所需的信息。 超级用户通过管理面板创建用户后,在成功登录之前,
last\u login
字段将为
None

因此,
User.objects.filter(last\u login\u isnull=True)
为您提供所有创建的从未登录的用户


编辑问题后:

  • 首先,您可能应该使用djangos default
    User
    模型,而不是您自己的模型,因为您建议的字段实际上与已经存在的字段相同
  • reg=User.last\u login
    不正确,因为应该为每个用户实例而不是类对象检查字段
    last\u login
在您的视图中尝试以下操作:

@login_required
def users(request):
    return render(
        request,
        'account/viewUsers.html',
        {'all_users': User.objects.all()})
在您的模板中:

{% for u in all_users %}
    <tr>
        <td>{{ u.first_name }}</td>
        <td>{{ u.last_name }}</td>
        <td>{{ u.email }}</td>
        <td>
            <button type="button" class="btn btn-lg btn-primary" disabled>
                {% if u.is_active %}Active{% else %}Inactive{% endif %}
            </button>
        </td>
        <td>
            <button type="button" class="btn btn-lg btn-primary" disabled>
            {% if u.last_login is None %}
                Never logged in
            {% else %}
                Has last logged in on {{ u.last_login }}
            {% endif %}
            </button>
        </td>
    </tr>
{% endfor %}
{%for u in all_users%}
{{u.名字}
{{u.last_name}}
{{u.email}
{%if u.is_active%}active{%else%}Inactive{%endif%}
{%u.last_login为None%}
从未登录
{%else%}
上次登录{u.last_login}
{%endif%}
{%endfor%}

谢谢你的建议,我已经用代码编辑了我的问题。你能帮我看看吗
 {% for RegisteredUser in RegisteredUsers %}
        <tr>
        <td>{{ RegisteredUser.first_name }}</td>
                <td>{{ RegisteredUser.last_name }}</td>
                <td>{{ RegisteredUser.email }}</td>
        {% if RegisteredUser.is_active %}
          <td><button type="button" class="btn btn-lg btn-primary" disabled>Active</button></td>
        {% else %}
          <td><button type="button" class="btn btn-lg btn-primary" disabled>Inactive</button></td>
        {% endif %}
        {% if RegisterUser.is_register %}
           <td><button type="button" class="btn btn-lg btn-primary" disabled>Active</button></td>
        {% else %}
          <td><button type="button" class="btn btn-lg btn-primary" disabled>Inactive</button></td>
        {% endif %}
@login_required
def users(request):
    return render(
        request,
        'account/viewUsers.html',
        {'all_users': User.objects.all()})
{% for u in all_users %}
    <tr>
        <td>{{ u.first_name }}</td>
        <td>{{ u.last_name }}</td>
        <td>{{ u.email }}</td>
        <td>
            <button type="button" class="btn btn-lg btn-primary" disabled>
                {% if u.is_active %}Active{% else %}Inactive{% endif %}
            </button>
        </td>
        <td>
            <button type="button" class="btn btn-lg btn-primary" disabled>
            {% if u.last_login is None %}
                Never logged in
            {% else %}
                Has last logged in on {{ u.last_login }}
            {% endif %}
            </button>
        </td>
    </tr>
{% endfor %}