Question: Here is the problem :

I would like to merge two classes called *Song* each, both do share most members but not all. Populating their contents won't be problem in case members are not found, they will be simply ignored, so probably okay but who knows, I might have to revert back to the original implementation (separate objects).

This is where Git comes handy, for versioning my code. (that's my first time I use it)

Question is : how one would handle such change with Git ? create a commit or create a branch ?

Answer: 
`django.views.generic.list_detail` was [deprecated in Django 1.3](https://docs.djangoproject.com/en/1.3/topics/generic-views/#generic-views):

> 
> From Django 1.3, function-based generic views have been deprecated in favor of a class-based approach.
> 
> 
> 

Use [`django.views.generic.list.ListView`](https://docs.djangoproject.com/en/dev/ref/class-based-views/generic-display/#listview) instead.
After importing `django.views.generic.list.ListView`

You just need to change `list_detail.object_detail` to `ListView.as_view()`