2009-09-25 3 views

Répondre

0

Pour certaines raisons, les utilisateurs n'ayant pas d'autorisation d'accès à l'objet y ont toujours accès via Inline. Voici comment les supprimer dynamiquement:

class FooAdmin(admin.ModelAdmin): 
    inlines = ['SomeInline'] 
    ... 
    def change_view(self, request, object_id, extra_context=None): 
     def delete_inlines(inlines): 
      for index, inline in reversed(list(enumerate(self.inlines))): 
       if inline.__name__ in inlines: 
        del self.inlines[index] 
        del self.inline_instances[index] 
     delete_inlines(['SomeInline' ]) 
     return super(FooAdmin, self).change_view(request, object_id, extra_context=None) 
Questions connexes