2010-03-12 4 views
0

J'ai une question sur la bonne façon de gérer le modèle. Je suis un débutant relatif à django, donc je pense que j'ai besoin de lire plus docs, tutoriels, etc (suggestions pour ce serait cool!).Django: bonne façon d'utiliser le modèle, les doublons!

Quoi qu'il en soit, ma question est:

J'ai un robot web python, qui est "connecté" avec le modèle de django. L'exploration est effectuée une fois par jour, il est donc très courant de trouver des "doublons". Pour éviter les doublons que je fais ceci:

cars = Car.Objects.filter(name=crawledItem['name']) 
if len(cars) > 0: 
    #object already exists, update it 
    car = cars[0] 
else: 
    car = Car() 

#some non-relevant code here 

car.save() 

Je veux savoir, si cela est la bonne façon/correcte de le faire ou son tout « automatique » façon de le faire.

Il est possible de mettre la logique dans le constructeur Car() aussi, devrais-je faire cela?

Merci beaucoup!

+0

Informations sur les documents, etc.: http://stackoverflow.com/questions/2370443/which-is-the-best-django-study-book –

Répondre

6

Utilisez la méthode get_or_create() du gestionnaire, puis modifiez l'instance renvoyée si nécessaire.

Questions connexes