views.py

@login_required 
def ManageDomain(request): 
    AssocNotAuthDomains = Tld.objects.filter(FKtoUser_id=request.user,auth=0)
    AssocAuthDomains = Tld.objects.filter(FKtoUser_id=request.user,auth=1)

    return render(request, 'site/account/template.html', {
         'AssocNotAuthDomains':AssocNotAuthDomains,
         'AssocAuthDomains':AssocAuthDomains
    })

template.html

{% if AssocAuthDomains or AssocNotAuthDomains  %}
<div class="acctDomains">
    <h3 class="Titles"><img src="{% static "img/templated/acct/AuthDomainSm.png" %}" width="22" height="22" alt="Authorized Domain(s)" /> Verified Domains</h3>
    <ul>
    {% for authdomain in AssocAuthDomains %}
        <li>{{ authdomain }}<span><a class="scan" href="/Account/PerformScan/?d={{ authdomain }}">Scan now</span></a></li>
    {% endfor %}
    </ul>
    <h3 class="Titles"><img src="{% static "img/templated/acct/UnAuthDomain.png" %}" width="22" height="22" alt="Unverified Domain(s):" /> Unverified Domains</h3>
    <ul>
    {% for notauthdomain in AssocNotAuthDomains %}
        <li>{{ notauthdomain }}<span><a class="scan" href="Verify Now">Verify now</span></a></li>
    {% endfor %}
    </ul>
</div><!--acctDomains-->

Cela imprime:

Tld object (1)

Tld object (2)

Au lieu de la valeur par ex. websiteabc.com

Qu'est-ce que je fais mal?

Merci

0
Jshee 17 mars 2019 à 21:40

2 réponses

Meilleure réponse

Vous devez implémenter __str__ dans votre modèle si vous souhaitez rendre une instance de modèle comme celle-ci

class Tld(models.Model):
    def __str__(self):
        # return something meaningful here like self.some_attribute

Ou vous devez utiliser explicitement un attribut dans un modèle comme celui-ci

 {{ authdomain.some_attribute }}

Sinon, python ne sait pas comment extraire quelque chose de significatif d'un objet à afficher.

1
Nafees Anwar 17 mars 2019 à 18:54

C'est parce que vous essayez d'afficher l'objet entier, pas la valeur.

Vous devez remplacer

{{ notauthdomain }}

Avec

{{ notauthdomain.name }} 

Remplacez «nom» par le nom de champ de votre valeur - websiteabc.com

0
Razhel 17 mars 2019 à 18:51