2010-07-07 6 views
1

Bonjour Je crée une application de ticket d'incident pour mon entreprise, et je souhaite rediriger l'utilisateur vers un nouveau formulaire dans lequel il indiquera le diagnostic et la solution qu'il proposera. mon administrateur est Fondamentalement, mon code appelle le premier formulaire, lorsque l'obj créé est nouveau ou le statut est ouvert et il appelle le ClosedForm lorsque mon statut est fermé.Rediriger vers un nouveau formulaire dans Django Admin sur Enregistrer

Ce que je veux est que, lorsque l'utilisateur change l'état d'ouvert à fermé et enregistre le ticekt, il est redirigé vers ClosedForm

Merci

class TicketFormClosed(ModelForm): 
    class Meta: 
     model = Ticket 
     fields = ('status','call_sheet_number','diagnose','solution','call_attend_date',) 

class TicketForm(ModelForm): 
    class Meta: 
     model = Ticket 
     exclude = ('call_sheet_number','diagnose','solution','call_attend_date',) 

class TicketAdmin(admin.ModelAdmin): 

    def get_form(self, request, obj=None, **kwargs): 
     form = super(TicketAdmin, self).get_form(request, obj, **kwargs) 
     if obj == None or obj.status=='Open': 
      form = TicketForm 
     else: 
      form = TicketFormClosed 
     return form 
+0

Peut-être que vous devriez jeter un oeil à la ModelAdmin qui est utilisée pour la création d'utilisateurs –

Répondre

0

Jetez un coup d'oeil au code source admin.ModelAdmin. Vous trouverez les crochets remplaçables pour rediriger là. Par exemple, recherchez HttpResponseRedirect dans django/contrib/admin/options.py et vous verrez le flux par défaut s'exécuter.

Questions connexes