2010-10-27 16 views
0

En ajax j'interroge une URL django pour récupérer les derniers enregistrements. Je ne veux pas afficher les enregistrements que j'ai récupérés précédemment et je veux seulement récupérer 1 enregistrement pour chaque demande d'interrogation.Django Sondage pour les nouveaux enregistrements

Quelle serait la meilleure façon de le faire?

Répondre

0

Hmm. Vous pourriez le faire de deux façons que je peux penser à partir de la chauve-souris - il y en a sûrement plus.

Vous pouvez ajouter un champ appelé "already_retrieved" et le définir sur True pour les champs qui ont déjà été récupérés, puis seulement saisir Whatever.objects.filter (already_retrieved = False).

De même, si elles sont en ordre par un pk, vous pouvez simplement garder une trace de votre distance dans la liste des pk.

2
class Article(models.Model): 
    headline = models.CharField(max_length=100) 
    pub_date = models.DateField() 
    expire_date = models.DateField() 
    class Meta: 
     get_latest_by = 'pub_date' 

>>> from mysite.models import Article 
>>> Article.objects.latest() 

Si je ne me trompe pas dans la compréhension de votre question, vous pouvez aller get_latest_by attribute of Meta class and call the method dernière() `qui peut servir votre but, afin de ne pas récupérer l'enregistrement que vous pouvez utiliser deux fois le obj.pk > your_prev_retired_pk.