Reputation: 10072
From the Django intro tutorial, in \mysite\polls\admin.py
:
from django.contrib import admin
#...
class PollAdmin(admin.ModelAdmin):
#...
inlines = [ChoiceInline]
list_display = ('question', 'pub_date', 'was_published_today')
list_filter = ['pub_date']
admin.site.register(Poll, PollAdmin)
Why do inlines and list_filter
both use lists, while list_display
uses a tuple? Do inlines and list_filters
need to be mutable for some reason?
I'm just trying to understand the design decision here.
Upvotes: 3
Views: 1873
Reputation: 17713
It doesn't matter which you use because Django (and you) will never change them during runtime. All that's important is that the value be an iterable of strings. I often use foo = ["something"]
when there is only one element because I've gotten nailed so often when I accidentally say foo = ("somthing")
instead of foo = ("something",)
.
I would put this one-element-tuple-notation issue on my list of Python irritants, right after "significant whitespace". That said, I still love the language.
Upvotes: 8