fix bugs and rendering issues

This commit is contained in:
bkfox
2016-06-06 18:01:56 +02:00
parent 19f7ceaf9f
commit db54568a52
6 changed files with 102 additions and 109 deletions

View File

@ -57,12 +57,18 @@ class Section(View):
object = None
force_object = None
def add_css_class(self, css_class):
if self.css_class:
self.css_class += ' ' + css_class
else:
self.css_class = css_class
def __init__ (self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.css_class += 'section' if not self.css_class else ' section'
self.add_css_class('section')
if type(self) != Section:
self.css_class += ' section_' + type(self).__name__.lower()
self.add_css_class('section_' + type(self).__name__.lower())
if not self.attrs:
self.attrs = {}
@ -86,12 +92,14 @@ class Section(View):
'object': self.object,
}
def get(self, request, object=None, **kwargs):
def get_context(self, request, object=None, **kwargs):
self.object = self.force_object or object
self.request = request
self.kwargs = kwargs
return self.get_context_data()
context = self.get_context_data()
def get(self, request, object=None, **kwargs):
context = self.get_context(request, object, **kwargs)
if not context:
return ''
return render_to_string(self.template_name, context, request=request)
@ -201,7 +209,10 @@ class List(Section):
of ListItem.
"""
super().__init__(*args, **kwargs)
self.css_class += ' list'
self.add_css_class('list')
if type(self) != Section:
self.add_css_class('section_' + type(self).__name__.lower())
if items:
self.object_list = [
ListItem(item) for item in items