2013-03-20 6 views
1

Je crée la page d'administration, en utilisant ce modèle:Django filtre relation admin

Model.py:

class Company(models.Model): 
     name = models.CharField(max_length=50) 
     mail = models.EmailField(null=True, blank=True) 
     NIF = models.CharField(max_length=9, null=True, blank=True) 
     def __unicode__(self): 
       return self.name 

class Office(models.Model): 
     company = models.ForeignKey(Company) 
     name = models.CharField(max_length=50, default='Main') 
     dir = models.CharField(max_length=50) 
     def __unicode__(self): 
       return self.name 

class Employee(models.Model): 
     oficina = models.ForeignKey(Office) 
     name = models.CharField(max_length=50) 
     mail = models.EmailField(null=True, blank=True) 
     def __unicode__(self): 
       return self.name 

class Report(models.Model): 
     employee = models.ForeignKey(Employee) 
     problem = models.CharField(max_length=100) 
     finished = models.BooleanField() 

J'ai un problème quand je veux créer une nouvelle FORMULAIREDERAPPORT ... il y a beaucoup d'employés! Je veux filtrer avant de demander l'employé dans la page d'administration

Demandez d'abord à l'entreprise, lorsque l'entreprise est indiquée, demandez à l'Office, et quand le bureau est indiqué, sélectionnez l'employé. Il est possible de faire cela?

c'est mon Admin.py maintenant:

class ReportForm(admin.ModelAdmin): 
     fieldsets = [ 
       (None, { 
         'fields': ['employee', 'problem', 'finished'] 
       }), 
     ] 

admin.site.register(Report, ReportForm) 

Répondre

Questions connexes