PEP8 love.

This commit is contained in:
Chris Jones 2013-07-18 16:36:31 -07:00
parent 4089ad4aab
commit 82d9e7ae65
3 changed files with 31 additions and 10 deletions

View file

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-:
"""
WARNING: This file about to undergo major refactoring by @pydanny per Issue #99.
WARNING: This file about to undergo major refactoring by @pydanny per
Issue #99.
"""
from __future__ import division, absolute_import, unicode_literals
@ -22,7 +23,8 @@ class Admin2(object):
It keeps a registry of all registered Models and collects the urls of their
related ModelAdmin2 instances.
It also provides an index view that serves as an entry point to the admin site.
It also provides an index view that serves as an entry point to the
admin site.
"""
index_view = views.IndexView
app_index_view = views.AppIndexView
@ -46,7 +48,8 @@ class Admin2(object):
If a model is already registered, this will raise ImproperlyConfigured.
"""
if model in self.registry:
raise ImproperlyConfigured('%s is already registered in django-admin2' % model)
raise ImproperlyConfigured(
'%s is already registered in django-admin2' % model)
if not model_admin:
model_admin = types.ModelAdmin2
self.registry[model] = model_admin(model, admin=self, **kwargs)
@ -62,12 +65,14 @@ class Admin2(object):
"""
Deregisters the given model. Remove the model from the self.app as well
If the model is not already registered, this will raise ImproperlyConfigured.
If the model is not already registered, this will raise
ImproperlyConfigured.
"""
try:
del self.registry[model]
except KeyError:
raise ImproperlyConfigured('%s was never registered in django-admin2' % model)
raise ImproperlyConfigured(
'%s was never registered in django-admin2' % model)
# Remove the model from the apps registry
# Get the app label
@ -101,7 +106,8 @@ class Admin2(object):
for object_admin in self.registry.values():
if object_admin.name == name:
return object_admin
raise ValueError(u'No object admin found with name {}'.format(repr(name)))
raise ValueError(
u'No object admin found with name {}'.format(repr(name)))
def get_index_kwargs(self):
return {
@ -122,7 +128,8 @@ class Admin2(object):
}
def get_urls(self):
urlpatterns = patterns('',
urlpatterns = patterns(
'',
url(regex=r'^$',
view=self.index_view.as_view(**self.get_index_kwargs()),
name='dashboard'
@ -140,18 +147,21 @@ class Admin2(object):
name='logout'
),
url(regex=r'^(?P<app_label>\w+)/$',
view=self.app_index_view.as_view(**self.get_app_index_kwargs()),
view=self.app_index_view.as_view(
**self.get_app_index_kwargs()),
name='app_index'
),
url(regex=r'^api/v0/$',
view=self.api_index_view.as_view(**self.get_api_index_kwargs()),
view=self.api_index_view.as_view(
**self.get_api_index_kwargs()),
name='api_index'
),
)
for model, model_admin in self.registry.iteritems():
model_options = utils.model_options(model)
urlpatterns += patterns('',
urlpatterns += patterns(
'',
url('^{}/{}/'.format(
model_options.app_label,
model_options.object_name.lower()),

View file

@ -102,6 +102,7 @@ class ModelAdmin2(object):
update_view = views.ModelEditFormView
detail_view = views.ModelDetailView
delete_view = views.ModelDeleteView
history_view = views.ModelHistoryView
# API configuration
api_serializer_class = None
@ -174,6 +175,9 @@ class ModelAdmin2(object):
def get_delete_kwargs(self):
return self.get_default_view_kwargs()
def get_history_kwargs(self):
return self.get_default_view_kwargs()
def get_index_url(self):
return reverse('admin2:{}'.format(
self.get_prefixed_view_name('index')))

View file

@ -302,6 +302,13 @@ class ModelDeleteView(AdminModel2Mixin, generic.DeleteView):
return super(ModelDeleteView, self).delete(request, *args, **kwargs)
class ModelHistoryView(Admin2Mixin, generic.ListView):
def get_context_data(self, **kwargs):
context = super(ModelHistoryView, self).get_context_data(**kwargs)
context['model'] = self.get_model()
return context
class PasswordChangeView(Admin2Mixin, generic.UpdateView):
default_template_name = 'auth/password_change_form.html'