J'essaie de faire un JSON qui ressemblera à ceci:
@csrf_exempt
def create_subject(request, subject):
subject, created= Subjects.objects.get_or_create(
name=subject,
user=request.user,
created_by=request.user)
list = []
columns = [Subjects._meta.get_all_field_names()]
row = ????????
for value in row:
record = dict(zip(columns,value))
list.append(record)
result = simplejson.dumps(list, indent=4)
return HttpResponse(result)
3 Réponses :
Utiliser la méthode de QuerySet:
Si vous demandez comment faire cela pour un objet, vous devez utiliser:
from django.forms.models import model_to_dict values = model_to_dict(the_object)
J'ai eu du mal à obtenir le champ de fichier pour fonctionner correctement. À la fin, c'est ce qui a fonctionné pour moi.
Vous recherchez une méthode QuerySet ()? docs.djangoproject.com / FR / DEV / REF / MODÈLES / QUESYSETS / ...
Oui, exactement, je viens de le trouver, mais malheureusement quand je le fais: Row = Sujets.ObjectS.get (ID = 3) .Values (), je reçois une erreur: "Objet des sujets" n'a aucun attribut "valeurs"
.Bet () renvoie une instance d'objet, pas de queryset. Dans cet exemple, sujets.Objects.filter (ID = 3) fonctionnerait comme prévu
Pouvez-vous poster votre réponse afin que je puisse fermer la question