def get(self, page=1): dreams = BlogDream.select().paginate(int(page), int(pageConf['DREAM_NUM'])) nav = { 'model': 'index', 'num': BlogDream.select().count(), } sides = self.get_side() self.render('index/index.html', title="首页", dreams=dreams, side=sides, nav=nav)
def get(self, tag, page=1): p = BlogDream.select(BlogDream).join(BlogDreamTag).join(BlogTag).where(BlogTag.tag == tag).\ paginate(int(page), pageConf['DREAM_NUM']) nav = { 'model': 'tag/' + tag, 'num': BlogDream.select(BlogDream).join(BlogDreamTag).join(BlogTag).where(BlogTag.tag == tag).count(), } self.render("tag/index.html", dreams=p, title=tag, side=self.get_side(), nav=nav)
def get_side(self): side = { "recent_dream": BlogDream.select().limit(pageConf["RECENT_DREAM_NUM"]), # "recent_dream":[{"id":"3","title":"liwq"},{"id":"5","title":"vince"}], # "tags":BlogTag.select().limit(pageConf["TAG_NUM"]) # "tags":[{"tag":"python","count":3},{"tag":"tornado","count":5}] "tags": BlogTag.select(BlogTag, fn.Count(BlogDream.id).alias('count')).join(BlogDreamTag).join(BlogDream).group_by(BlogTag) } return side
def post(self): title = self.get_argument("title", "i have a dream") content = self.get_argument("content", "i have a dream") tags = self.get_argument("tags", "dream,") eMail = email = self.get_secure_cookie('usereMail') user = BlogUser.get(BlogUser.email==eMail) dream = BlogDream.create(title=title, content=content, user=user) model.saveTag(tags, dream.id) self.redirect("/dream/id/"+str(dream.id))
def get(self, id): dream = BlogDream.get(BlogDream.id == id) self.render("dream/index.html", title=dream.title, dream=dream, side=self.get_side())