DetailView中的Django if语句返回False

DetailView中的Django if语句返回False,django,if-statement,django-models,django-views,django-users,Django,If Statement,Django Models,Django Views,Django Users,我的主要问题是:如果用户是prime的所有者,那么它应该返回True。但它总是返回False My models.py: from django.db import models from django.contrib.auth.models import User from django.core.urlresolvers import reverse class Prime(models.Model): prime_owner = models.ForeignKey(User,

我的主要问题是:如果用户是prime的所有者,那么它应该返回True。但它总是返回False

My models.py:

from django.db import models
from django.contrib.auth.models import User
from django.core.urlresolvers import reverse


class Prime(models.Model):
    prime_owner = models.ForeignKey(User, null=True)
    prime_name = models.CharField(max_length=100)
    prime_address = models.CharField(max_length=250)
My views.py:

class PrimeDetails(generic.DetailView):
    template_name ='prime/primedetails.html'
    model = Prime


    def get_context_data(self, **kwargs):
        context = super(PrimeDetails, self).get_context_data(**kwargs)
        user = self.request.user
        prime_owner = Prime.prime_owner
        if user == prime_owner:
            owner = True
        else:
            owner = False
        context['owner'] = owner
        return context
primedetails.html

{% extends 'prime/base.html' %}

{% block content %}
<div class="container">
    <h1>{{ owner }}</h1>
    <h1>{{object.prime_name }}</h1>
    <h3>{{object.prime_address}}</h3>
</div>
{% endblock %}
{%extends'prime/base.html%}
{%block content%}
{{owner}}
{{object.prime_name}
{{object.prime_address}
{%endblock%}

Prime是一个模型,而不是对象。
尝试将素数更改为self.get_object(),如下所示:

 def get_context_data(self, **kwargs):
        context = super(PrimeDetails, self).get_context_data(**kwargs)
        user = self.request.user
        prime_owner = self.get_object().prime_owner
        if user == prime_owner:
            owner = True
        else:
            owner = False
        context['owner'] = owner
        return context

Prime是一个模型,而不是对象。
尝试将素数更改为self.get_object(),如下所示:

 def get_context_data(self, **kwargs):
        context = super(PrimeDetails, self).get_context_data(**kwargs)
        user = self.request.user
        prime_owner = self.get_object().prime_owner
        if user == prime_owner:
            owner = True
        else:
            owner = False
        context['owner'] = owner
        return context

是的,这就是我错过的。非常感谢你,兄弟,欢迎:),如果答案解决了问题,请将其标记为正确答案。我会的,但你回答得太快了,我还需要5分钟才能回答。是的,这正是我错过的。非常感谢你,朋友,欢迎:),如果答案解决了问题,请将其标记为正确答案。我会的,但你回答得太快了,我还需要5分钟才能回答