您好我正在为我的公司创建一个故障单应用程序,我想将用户重定向到一个新表单,在那里他将指定他提供的诊断和解决方案。 我的管理员是 基本上,现在我的代码调用第一个表单,当创建的obj是新的或状态是打开的,并且当我的状态关闭时它调用ClosedForm。
我想要的是,当用户将状态从Open更改为Closed并保存ticekt时,他被重定向到ClosedForm
由于
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 :(得分:0)
查看admin.ModelAdmin的源代码。你会发现可重叠的钩子可以重定向。
例如,在中搜索HttpResponseRedirect Django的/的contrib /管理/ options.py 并且你会看到默认流程正在播放。