def render(self, *args, **kwargs): kind = args[0] tag_slug = args[1] current = int(args[2]) pager_count = int( MPost2Label.total_number(tag_slug, kind) / config.CMS_CFG['list_num']) page_num = ( pager_count if abs(pager_count - MPost2Label.total_number(tag_slug, kind) / config.CMS_CFG['list_num']) < 0.1 else pager_count + 1) kwd = { 'page_home': False if current <= 1 else True, 'page_end': False if current >= page_num else True, 'page_pre': False if current <= 1 else True, 'page_next': False if current >= page_num else True, } return self.render_string('modules/post/label_pager.html', kwd=kwd, cat_slug=tag_slug, pager_num=page_num, page_current=current, kind=kind)
def test_total_number(self): self.add_mess() a = MPost2Label.total_number(self.uid) self.add_M2L() b = MPost2Label.total_number(self.uid) assert a + 1 == b self.tearDown()
def list(self, kind, tag_slug, cur_p=''): ''' 根据 cat_handler.py 中的 def view_cat_new(self, cat_slug, cur_p = '') ''' # 下面用来使用关键字过滤信息,如果网站信息量不是很大不要开启 # Todo: # if self.get_current_user(): # redisvr.sadd(config.redis_kw + self.userinfo.user_name, tag_slug) if cur_p == '': current_page_number = 1 else: try: current_page_number = int(cur_p) except TypeError: current_page_number = 1 except Exception as err: print(err.args) print(str(err)) print(repr(err)) current_page_number = 1 if current_page_number < 1 else current_page_number pager_num = int( MPost2Label.total_number(tag_slug, kind) / CMS_CFG['list_num']) tag_info = MLabel.get_by_slug(tag_slug) if tag_info: tag_name = tag_info.name else: tag_name = 'Label search results' kwd = { 'tag_name': tag_name, 'tag_slug': tag_slug, 'title': tag_name, 'current_page': current_page_number, 'router': router_post[kind], 'kind': kind } the_list_file = './templates/list/label_{kind}.html'.format(kind=kind) if os.path.exists(the_list_file): tmpl = 'list/label_{kind}.html'.format(kind=kind) else: tmpl = 'list/label.html' self.render(tmpl, infos=MPost2Label.query_pager_by_slug( tag_slug, kind=kind, current_page_num=current_page_number), kwd=kwd, userinfo=self.userinfo, pager=self.gen_pager(kind, tag_slug, pager_num, current_page_number), cfg=CMS_CFG)
def list(self, kind, tag_slug, cur_p=''): ''' 根据 cat_handler.py 中的 def view_cat_new(self, cat_slug, cur_p = '') :param tag_slug: :return: ''' # 下面用来使用关键字过滤信息,如果网站信息量不是很大不要开启 # Todo: # if self.get_current_user(): # redisvr.sadd(config.redis_kw + self.userinfo.user_name, tag_slug) if cur_p == '': current_page_number = 1 else: current_page_number = int(cur_p) current_page_number = 1 if current_page_number < 1 else current_page_number pager_num = int( MPost2Label.total_number(tag_slug, kind) / CMS_CFG['list_num']) tag_name = '' kwd = { 'tag_name': tag_name, 'tag_slug': tag_slug, 'title': tag_name, 'current_page': current_page_number } self.render('list/label_{kind}.html'.format(kind=kind), infos=MPost2Label.query_pager_by_slug( tag_slug, kind=kind, current_page_num=current_page_number), unescape=tornado.escape.xhtml_unescape, kwd=kwd, userinfo=self.userinfo, pager=self.gen_pager(kind, tag_slug, pager_num, current_page_number), cfg=CMS_CFG)
def test_total_number(self): MPost2Label.total_number(self.name) assert True