当前位置: 首页>>代码示例>>Python>>正文


Python toolbar_pool.register方法代码示例

本文整理汇总了Python中cms.toolbar_pool.toolbar_pool.register方法的典型用法代码示例。如果您正苦于以下问题:Python toolbar_pool.register方法的具体用法?Python toolbar_pool.register怎么用?Python toolbar_pool.register使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在cms.toolbar_pool.toolbar_pool的用法示例。


在下文中一共展示了toolbar_pool.register方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_toolbar_page_extension

# 需要导入模块: from cms.toolbar_pool import toolbar_pool [as 别名]
# 或者: from cms.toolbar_pool.toolbar_pool import register [as 别名]
def test_toolbar_page_extension(self):
        old_toolbars = deepcopy(toolbar_pool.toolbars)
        class SampleExtension(ExtensionToolbar):
            model = MyPageExtension  # The PageExtension / TitleExtension you are working with

            def populate(self):
                current_page_menu = self._setup_extension_toolbar()
                if current_page_menu:
                    position = 0
                    page_extension, url = self.get_page_extension_admin()
                    if url:
                        current_page_menu.add_modal_item('TestItem', url=url,
                                                         disabled=not self.toolbar.edit_mode,
                                                         position=position)
        toolbar_pool.register(SampleExtension)
        with self.login_user_context(self.admin):
            response = self.client.get('/en/?edit')
            self.assertIn("TestItem", response.rendered_content)
        toolbar_pool.toolbars = old_toolbars 
开发者ID:farhan711,项目名称:DjangoCMS,代码行数:21,代码来源:test_extensions.py

示例2: test_toolbar_title_extension

# 需要导入模块: from cms.toolbar_pool import toolbar_pool [as 别名]
# 或者: from cms.toolbar_pool.toolbar_pool import register [as 别名]
def test_toolbar_title_extension(self):
        old_toolbars = deepcopy(toolbar_pool.toolbars)

        class SampleExtension(ExtensionToolbar):
            model = MyTitleExtension

            def populate(self):
                current_page_menu = self._setup_extension_toolbar()
                if current_page_menu:
                    position = 0
                    urls = self.get_title_extension_admin()
                    for title_extension, url in urls:
                        current_page_menu.add_modal_item('TestItem', url=url,
                                                         disabled=not self.toolbar.edit_mode,
                                                         position=position)
        toolbar_pool.register(SampleExtension)
        with self.login_user_context(self.admin):
            response = self.client.get('/en/?edit')
            self.assertIn("TestItem", response.rendered_content)
        toolbar_pool.toolbars = old_toolbars 
开发者ID:farhan711,项目名称:DjangoCMS,代码行数:22,代码来源:test_extensions.py

示例3: populate

# 需要导入模块: from cms.toolbar_pool import toolbar_pool [as 别名]
# 或者: from cms.toolbar_pool.toolbar_pool import register [as 别名]
def populate(self):
        concurrency_btn = ConcurrencyButton(self.toolbar.request)
        # we need to register this button in order to get the code into the template
        self.toolbar.add_item(concurrency_btn) 
开发者ID:Blueshoe,项目名称:djangocms-concurrent-users,代码行数:6,代码来源:cms_toolbars.py

示例4: test_register

# 需要导入模块: from cms.toolbar_pool import toolbar_pool [as 别名]
# 或者: from cms.toolbar_pool.toolbar_pool import register [as 别名]
def test_register(self):
        pool = ToolbarPool()
        pool.register(TestToolbar)
        pool.register(CMSToolbar)
        self.assertEqual(pool.toolbars, {
            'cms.toolbar_base.CMSToolbar': CMSToolbar,
            'cms.tests.test_toolbar_pool.TestToolbar': TestToolbar})

        self.assertRaises(ToolbarAlreadyRegistered,
                          pool.register, TestToolbar) 
开发者ID:farhan711,项目名称:DjangoCMS,代码行数:12,代码来源:test_toolbar_pool.py

示例5: test_register_type

# 需要导入模块: from cms.toolbar_pool import toolbar_pool [as 别名]
# 或者: from cms.toolbar_pool.toolbar_pool import register [as 别名]
def test_register_type(self):
        pool = ToolbarPool()
        self.assertRaises(ImproperlyConfigured, pool.register, str)
        self.assertRaises(ImproperlyConfigured, pool.register, object) 
开发者ID:farhan711,项目名称:DjangoCMS,代码行数:6,代码来源:test_toolbar_pool.py

示例6: test_unregister

# 需要导入模块: from cms.toolbar_pool import toolbar_pool [as 别名]
# 或者: from cms.toolbar_pool.toolbar_pool import register [as 别名]
def test_unregister(self):
        pool = ToolbarPool()
        pool.register(TestToolbar)
        pool.unregister(TestToolbar)
        self.assertEqual(pool.toolbars, {})

        self.assertRaises(ToolbarNotRegistered,
                          pool.unregister, TestToolbar) 
开发者ID:farhan711,项目名称:DjangoCMS,代码行数:10,代码来源:test_toolbar_pool.py

示例7: test_settings

# 需要导入模块: from cms.toolbar_pool import toolbar_pool [as 别名]
# 或者: from cms.toolbar_pool.toolbar_pool import register [as 别名]
def test_settings(self):
        pool = ToolbarPool()
        toolbars = toolbar_pool.toolbars
        toolbar_pool.clear()
        with self.settings(CMS_TOOLBARS=['cms.cms_toolbars.BasicToolbar', 'cms.cms_toolbars.PlaceholderToolbar']):
            toolbar_pool.register(TestToolbar)
            self.assertEqual(len(list(pool.get_toolbars().keys())), 2)
            api.create_page("home", "simple.html", "en", published=True)
            with self.login_user_context(self.get_superuser()):
                response = self.client.get("/en/?%s" % get_cms_setting('CMS_TOOLBAR_URL__EDIT_ON'))
                self.assertEqual(response.status_code, 200)
        toolbar_pool.toolbars = toolbars 
开发者ID:farhan711,项目名称:DjangoCMS,代码行数:14,代码来源:test_toolbar_pool.py

示例8: test_register_extension

# 需要导入模块: from cms.toolbar_pool import toolbar_pool [as 别名]
# 或者: from cms.toolbar_pool.toolbar_pool import register [as 别名]
def test_register_extension(self):
        initial_extension_count = len(extension_pool.page_extensions)
        # --- None extension registering -----------------------------
        from cms.exceptions import SubClassNeededError
        none_extension = self.get_none_extension_class()
        self.assertRaises(SubClassNeededError, extension_pool.register, none_extension)
        self.assertEqual(len(extension_pool.page_extensions), initial_extension_count)
        self.assertEqual(len(extension_pool.title_extensions), initial_extension_count)

        # --- Page registering ---------------------------------------
        page_extension = self.get_page_extension_class()

        # register first time
        extension_pool.register(page_extension)
        self.assertEqual(len(extension_pool.page_extensions), initial_extension_count+1)

        # register second time
        extension_pool.register(page_extension)
        self.assertEqual(len(extension_pool.page_extensions), initial_extension_count+1)

        self.assertIs(extension_pool.signaling_activated, True)

        # --- Title registering --------------------------------------
        title_extension = self.get_title_extension_class()

        # register first time
        extension_pool.register(title_extension)
        self.assertEqual(len(extension_pool.title_extensions), initial_extension_count+1)

        # register second time
        extension_pool.register(title_extension)
        self.assertEqual(len(extension_pool.title_extensions), initial_extension_count+1)

        self.assertIs(extension_pool.signaling_activated, True)

        # --- Unregister ---------------------------------------------
        extension_pool.unregister(page_extension)
        self.assertEqual(len(extension_pool.page_extensions), initial_extension_count)

        extension_pool.unregister(title_extension)
        self.assertEqual(len(extension_pool.title_extensions), initial_extension_count)

        # Unregister an object that is not registered yet
        extension_pool.unregister(page_extension)
        extension_pool.unregister(title_extension) 
开发者ID:farhan711,项目名称:DjangoCMS,代码行数:47,代码来源:test_extensions.py


注:本文中的cms.toolbar_pool.toolbar_pool.register方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。