在django管理内联模型中访问请求对象
我有以下模型/表单/管理层次结构。我想要实现的基本上是,将当前登录的用户添加到AttachmentInlines的一个字段中。所以我想我需要请求对象,它通过下面实现的几个方法传入。 但是,这些方法都不会在该上下文中被调用,显然是因为我使用的是内联模型 我可以在InvoiceAdmin#save#U模型中工作,但这很糟糕,因为这样我就必须在所有使用相同内联线的模型管理员中工作。对我来说不太干 那么,有没有其他方法可以从管理中的内联模型中访问请求对象呢在django管理内联模型中访问请求对象,django,django-admin,Django,Django Admin,我有以下模型/表单/管理层次结构。我想要实现的基本上是,将当前登录的用户添加到AttachmentInlines的一个字段中。所以我想我需要请求对象,它通过下面实现的几个方法传入。 但是,这些方法都不会在该上下文中被调用,显然是因为我使用的是内联模型 我可以在InvoiceAdmin#save#U模型中工作,但这很糟糕,因为这样我就必须在所有使用相同内联线的模型管理员中工作。对我来说不太干 那么,有没有其他方法可以从管理中的内联模型中访问请求对象呢 class AttachmentForm(fo
class AttachmentForm(forms.ModelForm):
class Meta:
model = Attachment
def save(self, request, obj, *args, **kwargs):
print 'I never get called :-('
class AttachmentInlines(generic.GenericStackedInline):
model = Attachment
form = AttachmentForm
def save_model(self, request, obj, form, change):
print 'I never get called either...'
class InvoiceAdmin(admin.ModelAdmin):
inlines = [ AttachmentInlines, ]
def save_model(self, request, obj, form, change):
print 'I DO get called, but I am not needed...'
为什么不能将ModelAdmin子类化以添加逻辑,然后将其用作每个内联线的基类?老实说,我还没有想到这一点,因为我认为a)对于如此简单的东西,必须有一个更直接的解决方案,b)可能有一个很好的理由解释为什么这些内联线的行为与普通的ModelAdmin如此不同。