def add_menu_item(self, menu_item, target_category=None): """ Add menu item to menu tree hierarchy. :param menu_item: MenuItem class instance :param target_category: Target category name """ if target_category: cat_text = as_unicode(target_category) category = self._menu_categories.get(cat_text) # create a new menu category if one does not exist already if category is None: category = MenuCategory(target_category) category.class_name = self.category_icon_classes.get(cat_text) self._menu_categories[cat_text] = category self._menu.append(category) category.add_child(menu_item) else: self._menu.append(menu_item)
def admin_add_category(admin, target_category, *args, **kwargs): """ :param admin: flask-admin 实例 :param target_category: str, 分类名称 Usage:: category = 'category' admin_add_category(admin, category) admin.add_sub_category('user', category) admin.add_view(ShareUserModelView( User, db.session, name='user', category='user')) """ from flask_admin.menu import MenuCategory cat_text = target_category.decode('utf-8')\ if isinstance(target_category, bytes) else target_category category = admin._menu_categories.get(cat_text) if category is None: category = MenuCategory(target_category) category.class_name = admin.category_icon_classes.get(cat_text) admin._menu_categories[cat_text] = category admin._menu.append(category) return True
def _add_menu_item(self, menu_item, target_category): if target_category: category = self._menu_categories.get(target_category) if category is None: category = MenuCategory(target_category) self._menu_categories[target_category] = category self._menu.append(category) category.add_child(menu_item) else: self._menu.append(menu_item)
def _add_menu_item(self, menu_item, target_category): if target_category: cat_text = as_unicode(target_category) category = self._menu_categories.get(cat_text) if category is None: category = MenuCategory(target_category) self._menu_categories[cat_text] = category self._menu.append(category) category.add_child(menu_item) else: self._menu.append(menu_item)
def add_category(self, name, class_name=None, icon_type=None, icon_value=None): """ Add a category of a given name :param name: The name of the new menu category. :param class_name: The class name for the new menu category. :param icon_type: The icon name for the new menu category. :param icon_value: The icon value for the new menu category. """ cat_text = as_unicode(name) category = self.get_category_menu_item(name) if category: return category = MenuCategory(name, class_name=class_name, icon_type=icon_type, icon_value=icon_value) self._menu_categories[cat_text] = category self._menu.append(category)
def _add_menu_item(self, menu_item, target_category): if target_category: cat_text = as_unicode(target_category) category = self._menu_categories.get(cat_text) # create a new menu category if one does not exist already if category is None: category = MenuCategory(target_category) category.class_name = self.category_icon_classes.get(cat_text) self._menu_categories[cat_text] = category self._menu.append(category) category.add_child(menu_item) else: self._menu.append(menu_item)
def _add_menu_item(self, menu_item, target_category): """ Add a view to the menu tree :param view: View to add """ if target_category: category = self._menu_categories.get(target_category) if category is None: category = MenuCategory(target_category) self._menu_categories[target_category] = category self._menu.append(category) category.add_child(menu_item) else: self._menu.append(menu_item)