本文整理汇总了Python中django.http.HttpRequest.current_page方法的典型用法代码示例。如果您正苦于以下问题:Python HttpRequest.current_page方法的具体用法?Python HttpRequest.current_page怎么用?Python HttpRequest.current_page使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类django.http.HttpRequest
的用法示例。
在下文中一共展示了HttpRequest.current_page方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_page_obj_change_data_from_template_tags
# 需要导入模块: from django.http import HttpRequest [as 别名]
# 或者: from django.http.HttpRequest import current_page [as 别名]
def test_page_obj_change_data_from_template_tags(self):
from django import template
superuser = self.get_superuser()
with self.login_user_context(superuser):
page_data = self.get_new_page_data()
change_user = str(superuser)
#some databases don't store microseconds, so move the start flag back by 1 second
before_change = tz_now()+datetime.timedelta(seconds=-1)
self.client.post(URL_CMS_PAGE_ADD, page_data)
page = Page.objects.get(title_set__slug=page_data['slug'], publisher_is_draft=True)
self.client.post('/en/admin/cms/page/%s/' % page.id, page_data)
t = template.Template("{% load cms_tags %}{% page_attribute changed_by %} changed on {% page_attribute changed_date as page_change %}{{ page_change|date:'Y-m-d\TH:i:s' }}")
req = HttpRequest()
page.save()
page.publish('en')
after_change = tz_now()
req.current_page = page
req.REQUEST = {}
actual_result = t.render(template.Context({"request": req}))
desired_result = "{0} changed on {1}".format(change_user, actual_result[-19:])
save_time = make_aware(datetime.datetime.strptime(actual_result[-19:], "%Y-%m-%dT%H:%M:%S"), get_current_timezone())
self.assertEqual(actual_result, desired_result)
# direct time comparisons are flaky, so we just check if the page's changed_date is within the time range taken by this test
self.assertTrue(before_change <= save_time)
self.assertTrue(save_time <= after_change)
示例2: test_titles_and_meta
# 需要导入模块: from django.http import HttpRequest [as 别名]
# 或者: from django.http.HttpRequest import current_page [as 别名]
def test_titles_and_meta(self):
"""
Test H1 attribute
"""
from django import template
with self.login_user_context(self.superuser):
# Create pages
page_data = self.get_new_page_data()
pages = {
'page_with': self.__create_page(page_data),
'page_without': self.__create_page(page_data, without_h1=True)
}
# Create template
t = template.Template(
"{% load cms_tags %}Page: {{ request.current_page.get_title_obj.metadata.h1 }}")
# Post pages on the site
for page_type, page in pages.items():
page.save()
# If page must to be with extra Titles and META data
if page_type == 'page_with':
self.__extend_page(page, page_data)
page.publish(settings.LANGUAGE_CODE)
# Test page without h1
req = HttpRequest()
req.current_page = pages['page_without']
req.REQUEST = {}
rendered = t.render(template.Context({"request": req}))
self.assertEqual(rendered, "Page: ")
# Test page with h1
req = HttpRequest()
req.current_page = pages['page_with']
req.REQUEST = {}
rendered = '{0}'.format(t.render(template.Context({"request": req})))
self.assertEqual(rendered, "Page: H1 is ready to use")
示例3: test_08_meta_description_and_keywords_from_template_tags
# 需要导入模块: from django.http import HttpRequest [as 别名]
# 或者: from django.http.HttpRequest import current_page [as 别名]
def test_08_meta_description_and_keywords_from_template_tags(self):
from django import template
self.client.login(username= 'test', password='test')
page_data = self.get_new_page_data()
page_data["title"] = "Hello"
page_data["meta_description"] = "I am a page"
page_data["meta_keywords"] = "page,cms,stuff"
response = self.client.post('/admin/cms/page/add/', page_data)
t = template.Template("{% load cms_tags %}{% page_attribute title %} {% page_attribute meta_description %} {% page_attribute meta_keywords %}")
req = HttpRequest()
req.current_page = Page.objects.get(id=1)
req.REQUEST = {}
assert(t.render(template.Context({"request": req}))=="Hello I am a page page,cms,stuff")
示例4: test_07_meta_description_and_keywords_from_template_tags
# 需要导入模块: from django.http import HttpRequest [as 别名]
# 或者: from django.http.HttpRequest import current_page [as 别名]
def test_07_meta_description_and_keywords_from_template_tags(self):
from django import template
page_data = self.get_new_page_data()
page_data["title"] = "Hello"
page_data["meta_description"] = "I am a page"
page_data["meta_keywords"] = "page,cms,stuff"
self.client.post(URL_CMS_PAGE_ADD, page_data)
page = Page.objects.get(title_set__slug=page_data['slug'])
self.client.post('/admin/cms/page/%s/' %page.id, page_data)
t = template.Template("{% load cms_tags %}{% page_attribute title %} {% page_attribute meta_description %} {% page_attribute meta_keywords %}")
req = HttpRequest()
page.published = True
page.save()
req.current_page = page
req.REQUEST = {}
self.assertEqual(t.render(template.Context({"request": req})), "Hello I am a page page,cms,stuff")
示例5: test_meta_description_from_template_tags
# 需要导入模块: from django.http import HttpRequest [as 别名]
# 或者: from django.http.HttpRequest import current_page [as 别名]
def test_meta_description_from_template_tags(self):
from django import template
superuser = self.get_superuser()
with self.login_user_context(superuser):
page_data = self.get_new_page_data()
page_data["title"] = "Hello"
page_data["meta_description"] = "I am a page"
self.client.post(URL_CMS_PAGE_ADD, page_data)
page = Page.objects.get(title_set__slug=page_data['slug'], publisher_is_draft=True)
self.client.post('/en/admin/cms/page/%s/' % page.id, page_data)
t = template.Template(
"{% load cms_tags %}{% page_attribute title %} {% page_attribute meta_description %}")
req = HttpRequest()
page.save()
page.publish('en')
req.current_page = page
req.REQUEST = {}
self.assertEqual(t.render(template.Context({"request": req})), "Hello I am a page")
示例6: get_request
# 需要导入模块: from django.http import HttpRequest [as 别名]
# 或者: from django.http.HttpRequest import current_page [as 别名]
def get_request(self, path=''):
request = HttpRequest()
request.current_page = None
request.path = path
return request