我用django的通用視圖代碼是這樣的:
class IndexView(BaseView, ListView):
ismobile = True
if ismobile:
template_name = "m/index.html"
else:
template_name = 'index.html'
context_object_name = 'article_list'
paginate_by = settings.PAGE_NUM # 分頁--每頁的數目
def get_queryset(self):
article_list = Article.objects.filter(status=0)
return article_list
def get_context_data(self, **kwargs):
# 輪播
kwargs['home']= True
return super(IndexView, self).get_context_data(**kwargs)
大家可以幫我看下,我代碼的第一句是ismobile = True意思就是判斷是不是手機端方訪問的.我的目的是想改成通過requests來判斷,比如把代碼改成這樣
class IndexView(BaseView, ListView):
#手機訪問,用手機模板
if 'm.maidu.com' in self.request.get_host():
template_name = "m/index.html"
電腦訪問用電腦模板
else:
template_name = 'index.html'
.......
但是代碼直接這樣寫會出錯,會提示self不存在,我想下,如何優雅的解決這個問題?
高手接招! 在django的通用視圖里面做判斷
慕田峪7331174
2019-02-20 21:17:08