AttributeError at /check 'QuerySet' object has no attribute 'name'

я хотел проверить, существует ли имя в таблице owner или нет.

вот мой index.html `

<form style="color:black" method="POST" action="check" class=" mt-3">
                            {% csrf_token %}
                            <div class="row mb-3">
                                <label for="inputText" class="col-sm-3 col-form-label">Username</label>
                                <div class="col-sm-8">
                                    <input type="text" name="name" placeholder="Username" class="form-control">
                                </div>
                            </div>
                            <div class="row mb-3">
                                <label for="inputText" class="col-sm-3 col-form-label">Password</label>
                                <div class="col-sm-8">
                                    <input type="text" name="password" placeholder="password" class="form-control">
                                </div>
                            </div>
                            <button class="btn btn-success mb-3" type="submit">Login</button>
                            <a class="btn btn-danger mb-3" href="index">Go Back</a>
                        </form>

this is my urls.py

path('index', views.index),
    path('check', views.check),

this is my views.py

def check(request):

    owners = owner.objects.all()
    if request.method == "POST":
        name = request.POST.get('name')
        password = request.POST.get('password')
        if owners.name == name and owners.password == password :
            return render(request, "card/check.html")

it gives error on this line

 if owners.name == name and owners.password == password :

`

как проверить, существует или нет имя в таблице

Что вы на самом деле хотите? Пожалуйста, опишите это кратко.

owners = owner.objects.all() # This line fetches all the record in the owner table and returns queryset object


if owners.name == name and owners.password == password # The queryset can not have a name attribute. Use an instance.

Решение:

name = request.POST.get('name')
password = request.POST.get('password')
owner = Owner.objects.filter(name=name, password=password).first()
if owner:
    return render(request, "card/check.html")
Вернуться на верх