Mercurial > public > sg101
view gpp/comments/admin.py @ 463:452835f4429f
Fixing #225; for some reason MySQL finds the user 'John' when searching for 'John ' (note trailing space). This doesn't happen on SQLite. This causes a NoReverseMatch when searching for 'John ' in the member search. The solution is to call strip() on the form field contents in the clean_username() method of the search form.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sat, 09 Jul 2011 02:00:48 +0000 |
parents | cdfa3ed59600 |
children |
line wrap: on
line source
""" This file contains the automatic admin site definitions for the comment models. """ from django.contrib import admin from comments.models import Comment from comments.models import CommentFlag import bio.badges class CommentAdmin(admin.ModelAdmin): fieldsets = ( (None, {'fields': ('content_type', 'object_id', )} ), ('Content', {'fields': ('user', 'comment')} ), ('Metadata', {'fields': ('ip_address', 'is_public', 'is_removed')} ), ) list_display = ('__unicode__', 'content_type', 'object_id', 'ip_address', 'creation_date', 'is_public', 'not_removed') list_filter = ('creation_date', 'is_public', 'is_removed') date_hierarchy = 'creation_date' ordering = ('-creation_date', ) search_fields = ('comment', 'user__username', 'ip_address') raw_id_fields = ('user', 'content_type') class CommentFlagAdmin(admin.ModelAdmin): list_display = ('__unicode__', 'flag_date', 'get_comment_url') actions = ('accept_flags', ) raw_id_fields = ('user', 'comment') def accept_flags(self, request, qs): """This admin action awards a security pin to the user who reported the comment and then deletes the flagged comment object. """ for flag in qs: bio.badges.award_badge(bio.badges.SECURITY_PIN, flag.user) flag.delete() accept_flags.short_description = "Accept selected comment flags" admin.site.register(Comment, CommentAdmin) admin.site.register(CommentFlag, CommentFlagAdmin)