Le Moyen le plus Efficace pour obtenir la liste des valeurs de Django Queryset

Je peux voir quelques différentes options pour faire, et comme certains commentaires sur le plus efficace ou des "meilleures pratiques" de la méthode.

- Je obtenir un Django Queryset avec filtre()

c_layer_points = models.layer_points.objects.filter(location_id=c_location.pk,season_id=c_season.pk,line_path_id=c_line_path.pk,radar_id=c_radar.pk,layer_id__in=c_layer_pks,gps_time__gte=start_gps,gps_time__lte=stop_gps)

Ce queryset pourrait être très grandes (des centaines de milliers de lignes).

Maintenant, ce qui doit arriver est une conversion de listes et de l'encodage JSON.

Options (que j'ai vu dans mes recherches):

  1. Boucle sur le queryset

Exemple:

gps_time = [lp.gps_time for lp in c_layer_points];
twtt = [lp.twtt for lp in c_layer_points];
  1. Valeurs d'usage() ou values_list()
  2. Utilisation iterator()

À la fin, je voudrais encoder en json quelque chose comme ce format:

{'gps_time':[list of all gps times],'twtt',[list of all twtt]}

Tous les conseils sur la meilleure façon de le faire ce serait super, Merci!

  • Pourquoi ne pas vous venez de faire les mesures vous-même? import datetime; start = datetime.time(); <do your stuff> end = datetime.time(); print(end-start)
  • Je ont et vont continuer à le faire. Cependant, je voulais avoir une idée des autres sur ce que les "meilleures pratiques" serait ici. Surtout depuis quelques options sont presque les mêmes à partir d'un angle de l'efficacité.
InformationsquelleAutor | 2013-06-07