I agree that there are a lot of of hooks in the admin and we might need to better document them or remove unneeded or maybe make a revolution :) But, with the current api and scheme, having get_exclude is more of the expected behavior of Django and i think it should be implemented.
What we should certainly do -i believe- is more documenting the admin flow & how it's constructed, best practices to achieve certain repeated goals etc.. Regards, Ramez On Saturday, June 6, 2015 at 3:43:11 PM UTC+2, Marc Tamlyn wrote: > > I don't think we should add this. Exclude is passed to the form, and we > already have a way of changing the form based on the request. I'd rather > see changes made to reduce some of the many many ways to select fields in > the admin. By my count at present we have: > > ModelAdmin.fields > ModelAdmin.get_fields() > ModelAdmin.exclude > ModelAdmin.fieldsets > ModelAdmin.get_fieldsets() > ModelAdmin.readonly_fields > ModelAdmin.get_readonly_fields() > ModelAdmin.form concrete fields > ModelAdmin.form.Meta.fields > ModelAdmin.form.Meta.exclude > ModelAdmin.get_form() > > There's an argument the only one missing here is get_exclude(), but I > think the current API is silly. Personally, I'd like to see us moving > towards us encouraging doing more work in the form (and defining the form) > rather than doing so much in the ModelAdmin class. This may well require > better support for fieldsets in django.forms. > > Marc > > On 6 June 2015 at 05:06, Peter Farrell <[email protected] > <javascript:>> wrote: > >> We are writing a custom admin for CleanerVersion that subclasses >> ModelAdmin. Just about every attribute has a hook method which makes >> extension easier. For example, list_display has get_list_display(). >> However, exclude doesn't have one implemented and it seems like an >> oversight. I'm proposing we add one. >> >> Our current work seeking is to write a property descriptor for exclude >> but then the admin check fails with it not being a tuple or list. Then you >> have to create a custom admin checks class to suppress the exclude check >> error because it's not a tuple or list (but really a descriptor). >> >> If this is ok, I'Ill write a PR. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Django developers (Contributions to Django itself)" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> To post to this group, send email to [email protected] >> <javascript:>. >> Visit this group at http://groups.google.com/group/django-developers. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/django-developers/c1e8762d-1c9f-47e9-8fe7-e9761c27e057%40googlegroups.com >> . >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "Django developers (Contributions to Django itself)" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/django-developers. To view this discussion on the web visit https://groups.google.com/d/msgid/django-developers/2e87b9c7-f834-492b-8e84-bb0d782956ce%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
