﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
3287	[patch] Model methods in the change list can have checkmark icons by decorating with boolean=True	xian@…	Adrian Holovaty	"Model methods that return true or false show up as 'True' or 'False' in the admin if you put them in the list_display. Which isn't anywhere near as nice as the checkmark icons that BooleanFields get. If you want to get them yourself you have to do this:


{{{
    def is_current(self):
        from django.conf import settings
        current = self.start_date <= datetime.now() and self.end_date >= datetime.now()
        BOOLEAN_MAPPING = {True: 'yes', False: 'no', None: 'unknown'}
        result_repr = '<img src=""%simg/admin/icon-%s.gif"" alt=""%s"" />' % (settings.ADMIN_MEDIA_PREFIX, BOOLEAN_MAPPING[current], current)
        return result_repr
    is_current.allow_tags = True

}}}

Which is messy and brittle.

This patch lets you simply decorate the method with boolean=True and it works just like a booleanField

{{{
    def is_current(self):
        return self.start_date <= datetime.now() and self.end_date >= datetime.now()
    is_current.boolean = True
}}}

This is my first patch, so please look it over and advise if there is any way the styling could be improved to be more pythonic, or more djangonic. :)

I couldn't find any current tests that cover items_for_result() so I wasn't sure how to add tests for this. I'm pretty sure I could add to an existing test set, but am unsure how to go about creating a full new one. 

That said, the change is pretty trivial."	enhancement	closed	contrib.admin		normal	fixed	admin, list_display, boolean, checkmarks		Unreviewed	1	0	0	0	0	0
