Python wagtail.core.blocks.PageChooserBlock() Examples
The following are 22
code examples of wagtail.core.blocks.PageChooserBlock().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
wagtail.core.blocks
, or try the search function
.
Example #1
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 6 votes |
def test_initialisation_from_subclass(self): class LinkStructValue(blocks.StructValue): def url(self): return self.get('page') or self.get('link') class LinkBlock(blocks.StructBlock): title = blocks.CharBlock() page = blocks.PageChooserBlock(required=False) link = blocks.URLBlock(required=False) class Meta: value_class = LinkStructValue block = LinkBlock() self.assertEqual(list(block.child_blocks.keys()), ['title', 'page', 'link']) block_value = block.to_python({'title': 'Website', 'link': 'https://website.com'}) self.assertIsInstance(block_value, LinkStructValue) default_value = block.get_default() self.assertIsInstance(default_value, LinkStructValue)
Example #2
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_clean(self): required_block = blocks.PageChooserBlock() nonrequired_block = blocks.PageChooserBlock(required=False) christmas_page = Page.objects.get(slug='christmas') self.assertEqual(required_block.clean(christmas_page), christmas_page) with self.assertRaises(ValidationError): required_block.clean(None) self.assertEqual(nonrequired_block.clean(christmas_page), christmas_page) self.assertEqual(nonrequired_block.clean(None), None)
Example #3
Source File: blocks.py From wagtailcommonblocks with MIT License | 5 votes |
def __init__(self, can_choose_root=False, page_class='Page', app='wagtailcore', **kwargs): warnings.warn( "CommonPageChooserBlock is deprecated, use Wagtail's builtin PageChooserBlock instead", DeprecationWarning ) target_model = '{0}.{1}'.format(app, page_class) super(CommonPageChooserBlock, self).__init__( target_model=target_model, can_choose_root=can_choose_root, **kwargs)
Example #4
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_bulk_to_python(self): page_ids = [2, 3, 4, 5] expected_pages = Page.objects.filter(pk__in=page_ids) block = blocks.PageChooserBlock() with self.assertNumQueries(1): pages = block.bulk_to_python(page_ids) self.assertSequenceEqual(pages, expected_pages)
Example #5
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_deconstruct_target_model_multiple_strings(self): block = blocks.PageChooserBlock(page_type=['tests.SimplePage', 'tests.EventPage']) self.assertEqual(block.deconstruct(), ( 'wagtail.core.blocks.PageChooserBlock', (), {'page_type': ['tests.SimplePage', 'tests.EventPage']}))
Example #6
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_deconstruct_target_model_literal(self): block = blocks.PageChooserBlock(page_type=SimplePage) self.assertEqual(block.deconstruct(), ( 'wagtail.core.blocks.PageChooserBlock', (), {'page_type': ['tests.SimplePage']}))
Example #7
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_deconstruct_target_model_string(self): block = blocks.PageChooserBlock(page_type='tests.SimplePage') self.assertEqual(block.deconstruct(), ( 'wagtail.core.blocks.PageChooserBlock', (), {'page_type': ['tests.SimplePage']}))
Example #8
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_deconstruct_target_model_default(self): block = blocks.PageChooserBlock() self.assertEqual(block.deconstruct(), ( 'wagtail.core.blocks.PageChooserBlock', (), {}))
Example #9
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_target_model_multiple_literals(self): block = blocks.PageChooserBlock(page_type=[SimplePage, EventPage]) self.assertEqual(block.target_model, Page)
Example #10
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_target_model_literal(self): block = blocks.PageChooserBlock(page_type=SimplePage) self.assertEqual(block.target_model, SimplePage)
Example #11
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_target_model_string(self): block = blocks.PageChooserBlock(page_type='tests.SimplePage') self.assertEqual(block.target_model, SimplePage)
Example #12
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_target_model_default(self): block = blocks.PageChooserBlock() self.assertEqual(block.target_model, Page)
Example #13
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_form_response(self): block = blocks.PageChooserBlock() christmas_page = Page.objects.get(slug='christmas') value = block.value_from_datadict({'page': str(christmas_page.id)}, {}, 'page') self.assertEqual(value, christmas_page) empty_value = block.value_from_datadict({'page': ''}, {}, 'page') self.assertEqual(empty_value, None)
Example #14
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_form_render_with_target_model_multiple_literals(self): block = blocks.PageChooserBlock(help_text="pick a page, any page", page_type=[SimplePage, EventPage]) empty_form_html = block.render_form(None, 'page') self.assertIn('createPageChooser("page", ["tests.simplepage", "tests.eventpage"], null, false, null);', empty_form_html)
Example #15
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_form_render_with_target_model_multiple_strings(self): block = blocks.PageChooserBlock(help_text="pick a page, any page", page_type=['tests.SimplePage', 'tests.EventPage']) empty_form_html = block.render_form(None, 'page') self.assertIn('createPageChooser("page", ["tests.simplepage", "tests.eventpage"], null, false, null);', empty_form_html)
Example #16
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_form_render_with_target_model_literal(self): block = blocks.PageChooserBlock(help_text="pick a page, any page", page_type=SimplePage) empty_form_html = block.render_form(None, 'page') self.assertIn('createPageChooser("page", ["tests.simplepage"], null, false, null);', empty_form_html)
Example #17
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_form_render_with_target_model_string(self): block = blocks.PageChooserBlock(help_text="pick a page, any page", page_type='tests.SimplePage') empty_form_html = block.render_form(None, 'page') self.assertIn('createPageChooser("page", ["tests.simplepage"], null, false, null);', empty_form_html)
Example #18
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_form_render_with_target_model_default(self): block = blocks.PageChooserBlock() empty_form_html = block.render_form(None, 'page') self.assertIn('createPageChooser("page", ["wagtailcore.page"], null, false, null);', empty_form_html)
Example #19
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_deserialize(self): """The serialized value of a PageChooserBlock (an ID) should deserialize to a Page object""" block = blocks.PageChooserBlock() christmas_page = Page.objects.get(slug='christmas') self.assertEqual(block.to_python(christmas_page.id), christmas_page) # None should deserialize to None self.assertEqual(block.to_python(None), None)
Example #20
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_serialize(self): """The value of a PageChooserBlock (a Page object) should serialize to an ID""" block = blocks.PageChooserBlock() christmas_page = Page.objects.get(slug='christmas') self.assertEqual(block.get_prep_value(christmas_page), christmas_page.id) # None should serialize to None self.assertEqual(block.get_prep_value(None), None)
Example #21
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_calls_child_bulk_to_python_when_available(self): page_ids = [2, 3, 4, 5] expected_pages = Page.objects.filter(pk__in=page_ids) block = blocks.ListBlock(blocks.PageChooserBlock()) with self.assertNumQueries(1): pages = block.to_python(page_ids) self.assertSequenceEqual(pages, expected_pages)
Example #22
Source File: test_blocks.py From wagtail with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_initialisation_with_multiple_subclassses(self): class LinkStructValue(blocks.StructValue): def url(self): return self.get('page') or self.get('link') class LinkBlock(blocks.StructBlock): title = blocks.CharBlock() page = blocks.PageChooserBlock(required=False) link = blocks.URLBlock(required=False) class Meta: value_class = LinkStructValue class StyledLinkBlock(LinkBlock): classname = blocks.CharBlock() block = StyledLinkBlock() self.assertEqual(list(block.child_blocks.keys()), ['title', 'page', 'link', 'classname']) value_from_datadict = block.value_from_datadict({ 'queen-title': "Torchbox", 'queen-link': "http://www.torchbox.com", 'queen-classname': "fullsize", }, {}, 'queen') self.assertIsInstance(value_from_datadict, LinkStructValue)