def get(self, url, date, _from_head=False): article = Article.get_by_url(url) if not article: redirect_url = Article.search(date, url) if redirect_url: self.redirect(CONFIG.BLOG_HOME_RELATIVE_PATH + redirect_url, permanent=True) return else: raise HTTPError(404) if not (article.public or self.is_admin): raise HTTPError(404) previous_article, next_article = article.get_nearby_articles() if _from_head or self.request.headers.get('If-None-Match') or self.is_spider: hit_count = ArticleHitCount.get(article.id) else: hit_count = ArticleHitCount.increase(article.id) replies = ArticleComments.get_comment_count_of_article(article.id) self.set_cache(CONFIG.DEFAULT_CACHE_TIME, is_public=article.public) self.render('web/article.html', { 'title': article.title, 'page': 'article', 'article': article, 'previous_article': previous_article, 'next_article': next_article, 'hits': hit_count, 'replies': replies })
def get(self, url, date, _from_head=False): article = Article.get_by_url(url) if not article: redirect_url = Article.search(date, url) if redirect_url: self.redirect(CONFIG.BLOG_HOME_RELATIVE_PATH + redirect_url, permanent=True) return else: raise HTTPError(404) if not (article.public or self.is_admin): raise HTTPError(404) previous_article, next_article = article.get_nearby_articles() if _from_head or self.request.headers.get( 'If-None-Match') or self.is_spider: hit_count = ArticleHitCount.get(article.id) else: hit_count = ArticleHitCount.increase(article.id) replies = ArticleComments.get_comment_count_of_article(article.id) self.set_cache(CONFIG.DEFAULT_CACHE_TIME, is_public=article.public) self.render( 'web/article.html', { 'title': article.title, 'page': 'article', 'article': article, 'previous_article': previous_article, 'next_article': next_article, 'hits': hit_count, 'replies': replies })