Как проверить, существует ли пользователь в модели, которую я создал в Django?

Я делаю страницу входа и данные уже сохранены в модели, которую я сделал, а не в usercreateform... и вместо поиска пользователя в моей модели (UserAuthentication), он ищет в Users ...

view.py

def loginpage(request):
   if request.method == "POST":
       username = request.POST.get('username')
       password = request.POST.get('password')
       user = authenticate(request, username=username, password=password)
       if user is UserAuthentication: #UserAuthentication is my model where data is stored
           login(request, user)
           return redirect('index')
       else:
           messages.warning(request, "Username OR Password is incorrect!")
           return redirect('login')
   else:
       return render(request, "HTML/login.html", context={})

login.html

<form action="#" method="POST">
                        {%csrf_token %}

                        <input
                            class="text"
                            type="text"
                            name="username"
                            placeholder="Username"
                            required=""
                        />
                        <br />
                        <br />
                        <input
                            class="text"
                            type="password"
                            name="password"
                            placeholder="Password"
                            required=""
                        />
                        <br />
                        <br />

                        {%for message in messages%}
                        <p id="messages">{{message}}</p>
                        <br />
                        {% endfor %}
                        <input type="submit" value="LOGIN" />
                    </form>

В вашем файле settings.py необходимо указать, какую модель пользователя вы хотите использовать в проекте.

Добавьте эту строку в settings.py:

AUTH_USER_MODEL = '<app_name>.UserAuthentication'

Конечно, замените <app_name> на имя приложения, в котором определена UserAuthentication модель.

Далее, настроить пользовательскую модель в Django не так просто. Я настоятельно рекомендую вам взглянуть на официальные docs. Возможно, вы найдете ее запутанной, тогда вы можете поискать custom user in Django в Google. Там есть много отличных руководств.

Вернуться на верх