class CategoryArticleAdmin(ArticleAdmin): def queryset(self, request): return super(CategoryArticleAdmin, self).queryset(request).filter(category__id__in=self.category.get_children(only_id=True)) @property def category(self): return get_category(self.cate_name) def has_add_permission(self, request): return True def has_sync_to_permission(self, request, obj=None): return True def catearticleadmin_factory(class_s, category_name, model=CategoryArticleAdmin): class_attrs = { 'cate_name': category_name, '__module__': __name__, } class_name = '%s%s' % (model.__name__, class_s) return forms.MediaDefiningClass(class_name, (model,), class_attrs) categories = query_categories() for cate in categories: custom_site.register(catearticle_factory(cate.id, cate.name), catearticleadmin_factory(cate.id, cate.name))
objs = formset.save(commit=False) for obj in objs: obj.sync_status = 0 obj.save() formset.save_m2m() def has_sync_to_permission(self, request, obj=None): return False def has_sync_from_permission(self, request, obj=None): return False def _can_published_or_not(self, obj): if obj.status == COMMENT_STATUS.APPROVED: return True, '' else: return False, ( _("You can't publish not approved %(model)s: %(obj)s") % { 'model': self.model._meta.verbose_name, 'obj': obj }) custom_site.register(Category, CategoryAdmin) custom_site.register(Tag, TagAdmin) custom_site.register(Link, LinkAdmin) custom_site.register(Slider, SliderAdmin) custom_site.register(Photo, PhotoAdmin) custom_site.register(Article, ArticleAdmin) custom_site.register(Comment, CommentAdmin)
list_per_page = 50 search_fields = ['user__username', 'content_type__name'] def has_add_permission(self, request, obj=None): return False def display_action_flag(self, obj): return _LOG_ACTIONS[obj.action_flag] display_action_flag.short_description = _('action flag') class CustomUserAdmin(UserAdmin, CustomAuthAdmin): fieldsets = ( (None, {'fields': ('username', 'password', 'activation_code')}), (_('Personal info'), {'fields': ('first_name', 'last_name', 'email', 'qq', 'website')}), (_('Permissions'), {'fields': ('status', 'is_staff', 'is_active', 'is_superuser', 'groups', 'user_permissions')}), (_('Important dates'), {'fields': ('last_login', 'date_joined')}), ) list_filter = ('is_staff', 'is_superuser', 'status', 'groups') form = CustomUserChangeForm add_form = CustomUserCreationForm class CustomGroupAdmin(GroupAdmin, CustomAuthAdmin): pass custom_site.register(LogEntry, LogEntryAdmin) custom_site.register(CustomGroup, CustomGroupAdmin) custom_site.register(CustomUser, CustomUserAdmin)
""" if request.method == "POST": objs = formset.save(commit=False) for obj in objs: obj.sync_status = 0 obj.save() formset.save_m2m() def has_sync_to_permission(self, request, obj=None): return False def has_sync_from_permission(self, request, obj=None): return False def _can_published_or_not(self, obj): if obj.status == COMMENT_STATUS.APPROVED: return True, '' else: return False, (_("You can't publish not approved %(model)s: %(obj)s") % { 'model': self.model._meta.verbose_name, 'obj': obj }) custom_site.register(Category, CategoryAdmin) custom_site.register(Tag, TagAdmin) custom_site.register(Link, LinkAdmin) custom_site.register(Slider, SliderAdmin) custom_site.register(Photo, PhotoAdmin) custom_site.register(Article, ArticleAdmin) custom_site.register(Comment, CommentAdmin)
class CustomUserAdmin(UserAdmin, CustomAuthAdmin): fieldsets = ( (None, { 'fields': ('username', 'password', 'activation_code') }), (_('Personal info'), { 'fields': ('first_name', 'last_name', 'email', 'qq', 'website') }), (_('Permissions'), { 'fields': ('status', 'is_staff', 'is_active', 'is_superuser', 'groups', 'user_permissions') }), (_('Important dates'), { 'fields': ('last_login', 'date_joined') }), ) list_filter = ('is_staff', 'is_superuser', 'status', 'groups') form = CustomUserChangeForm add_form = CustomUserCreationForm class CustomGroupAdmin(GroupAdmin, CustomAuthAdmin): pass custom_site.register(LogEntry, LogEntryAdmin) custom_site.register(CustomGroup, CustomGroupAdmin) custom_site.register(CustomUser, CustomUserAdmin)
return super(CategoryArticleAdmin, self).queryset(request).filter( category__id__in=self.category.get_children(only_id=True)) @property def category(self): return get_category(self.cate_name) def has_add_permission(self, request): return True def has_sync_to_permission(self, request, obj=None): return True def catearticleadmin_factory(class_s, category_name, model=CategoryArticleAdmin): class_attrs = { 'cate_name': category_name, '__module__': __name__, } class_name = '%s%s' % (model.__name__, class_s) return forms.MediaDefiningClass(class_name, (model, ), class_attrs) categories = query_categories() for cate in categories: custom_site.register(catearticle_factory(cate.id, cate.name), catearticleadmin_factory(cate.id, cate.name))