In models.py:__unicode __() Verfahren funktioniert nicht gut
class POstan(models.Model):
name = models.TextField()
shortname = models.TextField()
map = models.TextField()
man = models.CharField(max_length=128)
woman = models.CharField(max_length=128)
about = models.TextField(blank=True, null=True)
map_img = models.TextField()
def __str__(self):
return self.name
class Meta:
managed = False
db_table = 'p_ostan'
In views.py:
def select(request):
list = PMenu.objects.all()
os = request.META['PATH_INFO']
os = os[8:]
items = PShahr.objects.filter(ostan=os)
farsi = POstan.objects.filter(shortname=os)
return render(request, 'select.html', {'list':list, 'os':os, 'farsi': farsi, 'items': items})
select.html:
{{ farsi }}
Der Ausgang ist das gerade jetzt:
[<POstan: اصفهان>]
Ich möchte die Ausgabe wie folgt sein:
اصفهان
Wie soll ich das tun?
Farsi ist im Grunde eine Liste der Objekte, die nach der Filterabfrage zurückgegeben wurden. In Ihrer Vorlage müssen Sie die Objekte durchlaufen und den Namen jedes Objekts ausgeben. versuchen Sie dies '{% für weit in farsi%}' '{{far.name}}' '{% endfor%}' –
Es funktioniert danke ou. – niloofar