2010-02-09 4 views
4

Je veux me débarrasser de deux gestionnaires liés dans un modèle parce que je n'en aurai jamais besoin. Comment puis-je me débarrasser d'eux?Django: Je ne veux pas de gestionnaire associé pour deux clés étrangères au même modèle

Ceci est mon profil d'utilisateur:

class UserProfile(models.Model): 
    user = models.ForeignKey(User, unique=True) 

    ...  

    default_upload_container=models.ForeignKey(Container,related_name='idontcare') 
    default_query_container=models.ForeignKey(Container,related_name='idontcareneither') 

Parce que default_upload_container et default_query_container ne sont que les valeurs par défaut spécifiques de l'utilisateur, je suppose que je ne pourrai jamais les interroger « arrière ». Je veux toujours des champs déroulants faciles dans l'admin.

Merci pour votre aide.

Répondre

2

Ceci est une question très semblable à Django: How do i create a foreign key without a related name?

https://docs.djangoproject.com/en/dev/ref/models/fields/:

Si vous préférez Django ne pas créer une relation arrière, ensemble related_name à '+' ou terminer avec « + '. Par exemple, cela garantira que le modèle de l'utilisateur ne sera pas une relation en arrière pour ce modèle:

user = models.ForeignKey (Utilisateur, related_name = '+')

+0

Merci pour l'indice. Cela a été ajouté dans django 1.2. – tback

+1

Étant donné que la technologie a changé depuis que la première réponse a été acceptée, vous pouvez envisager de sélectionner cette réponse. – rrauenza

Questions connexes