django-admin2/djadmin2/views.py

66 lines
2.1 KiB
Python
Raw Normal View History

from django.views import generic
2013-05-18 08:47:53 +00:00
2013-05-19 09:21:25 +00:00
import extra_views
from .viewmixins import Admin2Mixin, AdminModel2Mixin, Admin2ModelFormMixin
2013-05-21 21:50:50 +00:00
class IndexView(Admin2Mixin, generic.TemplateView):
2013-05-18 14:40:18 +00:00
default_template_name = "index.html"
registry = None
2013-05-19 11:03:25 +00:00
apps = None
2013-05-17 22:15:45 +00:00
def get_context_data(self, **kwargs):
data = super(IndexView, self).get_context_data(**kwargs)
data.update({
2013-05-19 11:03:25 +00:00
'apps': self.apps,
'registry': self.registry,
})
return data
2013-05-17 22:15:45 +00:00
2013-05-19 07:47:42 +00:00
class ModelListView(Admin2Mixin, generic.ListView):
2013-05-18 14:40:18 +00:00
default_template_name = "model_list.html"
permission_type = 'view'
2013-05-17 22:15:45 +00:00
2013-05-18 15:52:53 +00:00
def get_context_data(self, **kwargs):
context = super(ModelListView, self).get_context_data(**kwargs)
context['model'] = self.get_model()._meta.verbose_name
context['model_pluralized'] = self.get_model()._meta.verbose_name_plural
return context
2013-05-19 08:09:12 +00:00
2013-05-17 22:15:45 +00:00
class ModelDetailView(AdminModel2Mixin, generic.DetailView):
2013-05-18 14:40:18 +00:00
default_template_name = "model_detail.html"
permission_type = 'view'
2013-05-18 12:36:14 +00:00
class ModelEditFormView(AdminModel2Mixin, Admin2ModelFormMixin, extra_views.UpdateWithInlinesView):
2013-05-18 14:40:18 +00:00
form_class = None
default_template_name = "model_update_form.html"
permission_type = 'change'
2013-05-18 07:06:40 +00:00
def get_context_data(self, **kwargs):
context = super(ModelEditFormView, self).get_context_data(**kwargs)
context['model'] = self.get_model()._meta.verbose_name
context['action'] = "Change"
return context
2013-05-18 12:36:14 +00:00
class ModelAddFormView(AdminModel2Mixin, Admin2ModelFormMixin, extra_views.CreateWithInlinesView):
2013-05-18 12:36:14 +00:00
form_class = None
default_template_name = "model_update_form.html"
permission_type = 'add'
2013-05-18 12:36:14 +00:00
2013-05-20 13:06:28 +00:00
def get_context_data(self, **kwargs):
context = super(ModelAddFormView, self).get_context_data(**kwargs)
context['model'] = self.get_model()._meta.verbose_name
context['action'] = "Add"
2013-05-20 13:06:28 +00:00
return context
2013-05-17 22:15:45 +00:00
class ModelDeleteView(AdminModel2Mixin, generic.DeleteView):
2013-05-18 12:36:14 +00:00
success_url = "../../"
2013-05-19 08:01:50 +00:00
default_template_name = "model_confirm_delete.html"
permission_type = 'delete'