Ich habe eine Django-Anwendung mit einem Modell mit einer TextField
erstellt. Als ich das Admin-Interface verwenden, kann ich die TextField
als solche unten füllen:Wie man Zeichen in einem Textfeld korrekt in einer JSON Vorlage rendert
Allerdings, wenn ich es in JSON machen mit einer Vorlage ich folgendes in meinem Browser bekommen. I.e.
Ich bin nicht sicher, wie diese richtig zu handhaben, so dass der Text von meinem Textfeld eingegeben werden können, die innerhalb des Admin-Interface erforderlich ist, und dann wiedergegeben: Es kann nicht die Zeilenumbrüche korrekt als solche behandeln richtig als JSON.
Hier ist ein Ausschnitt aus meinem model.py:
@python_2_unicode_compatible
class Venue(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
name = models.CharField(max_length=50, blank=False, null=False)
description = models.TextField(blank=False, null=False)
def __str__(self):
return self.name
Hier wird die Funktion in der views.py
def venues(request):
venues_list = Venue.objects.order_by('-name')
context = {'venues_list':venues_list}
return render(request, 'myapp/venues.json', context, content_type='application/json')
Hier meine venue.json Vorlage:
[
{% for venue in venues_list %}
{
"venue_id":"{{venue.id}}",
"name":"{{venue.name}}",
"description":"{{venue.description}}"
}
{% if forloop.last %}{% else %}, {% endif %}
{% endfor %}
]
Irgendwelche Hilfe geschätzt?
P.S. Nicht sicher, ob eine Vorlage ein guter Ansatz ist. Aber ich möchte steuern, welche Felder in den JSON-Daten angezeigt werden, und nicht nur JSON, um das gesamte Modell auszugeben.