Это мое первое приложение django, и мне было интересно, можно ли иметь общий класс, который будет расширен всеми представлениями. НапримерDjango: Добавить другой подкласс в классном представлении
class GeneralParent:
def __init__(self):
#SETTING Up different variables
self.LoggedIn = false
def isLoggedIn(self):
return self.LoggedIn
class FirstView(TemplateView):
####other stuff##
def get_context_data(self, **kwargs):
context = super(IndexView, self).get_context_data(**kwargs)
allLeads = len(self.getAllLeads())
context['isLoggedIn'] = ####CALL GENEREAL PARENT CLASS METHOD###
return context
class SecondView(FormView):
####other stuff##
def get_context_data(self, **kwargs):
context = super(IndexView, self).get_context_data(**kwargs)
allLeads = len(self.getAllLeads())
context['isLoggedIn'] = ####CALL GENEREAL PARENT CLASS METHOD###
return context
Возможно ли это в джанго?
Это сработало, но почему мой класс должен наследовать от объекта? –
'super' работает только с классами нового стиля (наследуется от' object') - больше информации - https://docs.python.org/2/glossary.html#term-new-style-class –