def get_urls(self): urls = patterns('', url(r'^refresh/$', self.refresh_view, name='categoryuserrole-refresh'), ) urls += super(CategoryUserRoleAdmin, self).get_urls() return urls def refresh_view(self, request, extra_context=None): from ella.newman.management.commands.syncroles import denormalize # TODO: don't wait for denormalize() denormalize() return HttpResponse(_('All roles is now refreshed.')) site.register(m.DevMessage, DevMessageAdmin) site.register(m.AdminHelpItem, HelpItemAdmin) site.register(m.CategoryUserRole, CategoryUserRoleAdmin) # Category filter -- restricted categories accordingly to CategoryUserRoles and categories filtered via AdminSettings. # custom registered DateField filter. Filter is inserted to the beginning of filter chain. category_lookup = lambda fspec: '%s__%s__exact' % (fspec.field_path, fspec.f.rel.to._meta.pk.name) @filter_spec(lambda field: is_category_fk(field), category_lookup) def category_field_filter(fspec): qs = Category.objects.filter(pk__in=applicable_categories(fspec.user)) for cat in user_category_filter(qs, fspec.user): lookup_var = '%s__%s__exact' % (fspec.field_path, fspec.f.rel.to._meta.pk.name) link = ( cat, {lookup_var: cat.pk}) fspec.links.append(link) return True
from ella.newman import site, GenericTabularInline from ella.newman.licenses.models import License from ella.newman.options import NewmanModelAdmin LICENSED_MODELS = ( 'photos.photo', ) class LicenseInlineAdmin(GenericTabularInline): model = License max_num = 1 ct_field = 'ct' ct_fk_field = 'obj_id' class LicenseAdmin(NewmanModelAdmin): pass site.register(License, LicenseAdmin) site.append_inline(LICENSED_MODELS, LicenseInlineAdmin)
from ella.newman import site, GenericTabularInline from ella.newman.licenses import LICENSED_MODELS from ella.newman.licenses.models import License from ella.newman.options import NewmanModelAdmin class LicenseInlineAdmin(GenericTabularInline): model = License max_num = 1 ct_field = 'ct' ct_fk_field = 'obj_id' class LicenseAdmin(NewmanModelAdmin): pass site.register(License, LicenseAdmin) site.append_inline(LICENSED_MODELS, LicenseInlineAdmin)