﻿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
1399	[patch] [magic removal branch] Add 'template_model_name' to generic view list_detail.py	ChaosKCW	Jacob	"the generic views currently in the Magic-removal branch reference the the object or objects with the keyword 'object' or 'object_list' represetivly. This makes the templates rendering the page more obscure. 

Example: 

{{{
{% if survey_list %}
   ...
    {% for survey in survey_list %}
       ....
    {% endfor %}
....
{% endif %}
}}}

vs

{{{
{% if object_list %}
   ...
    {% for survey in object_list %}
       ....
    {% endfor %}
....
{% endif %}
}}}

I propose adding a new parameter called 'template_model_name' to the generic view. This will enable templates to be far more elegant and intutive. I also feel this would make generic templates more 'Djangoified' ie I think it fits with Django philsophies on creating a amzingly simple to use and clean web development framework. 

An Example of how this can be called in the URLConf is as follows: 

{{{
!#python
urlpatterns = patterns('',
    (r'^survey/(?P<object_id>\d+)/$', 'django.views.generic.list_detail.object_detail', {'queryset': Survey.objects.all(), 'template_model_name': 'survey'}),
    (r'^list/$', 'django.views.generic.list_detail.object_list', {'queryset': Survey.objects.all(), 'template_model_name': 'survey', 'template_name': 'survey/index'})
)
}}}

Please see the attach patch. 

Notice that I have included the a default on the argument 'template_model_name' and set it to 'object'. This means this patch can go in and never effect any code which doesnt want to use it. It will only come into effect if you add the extra argument into the URLConf setup, else everything works as before. 

"	enhancement	closed	Generic views		normal	fixed			Unreviewed	1	0	0	0	0	0
