一个django应用程序,在应用程序级别的右侧栏中添加portlet。
django-admin-app-sidebar的Python项目详细描述
django管理应用侧边栏
一个django应用程序,在应用程序级别的右侧栏中添加portlet。在
安装
pip install django-admin-app-sidebar
使用
pro/设置.py
注意:
- 我们在django_admin_app_侧边栏中使用了模板覆盖,因此必须在已安装的应用程序中包括django_admin_app_侧边栏。在
- 应用程序django_static_fontawesome是可选的选择。如果您在侧栏portlet中使用图标,您可能需要它。在
app/init.py
注意:
- 我们将在AppConfig.ready准备就绪在
default_app_config="django_admin_app_sidebar_example.apps.DjangoAdminAppSidebarExampleConfig"
应用程序/应用程序.py
注意:
- 默认情况下,django_admin_app_侧栏提供了一个简单的导航portlet。只需初始化一个导航实例,并将其注册为portlet。在
- 导航项配置
title
:必需。导航链接标题。在url
:必需。导航链接url。在icon
:可选。图标类就在链接标题之前。在target
:可选。link target,target=\u blank表示在新窗口或选项卡中打开。在depth
:可选。depth=2将向链接项添加20px缩进。深度=3将增加40px。在- 如果项=“-”,则显示分隔符。在
fromdjango.appsimportAppConfigfromdjango_admin_app_sidebar.portletsimportregister_portletfromdjango_admin_app_sidebar.portletsimportSidebarNavigationfromdjango.utils.translationimportugettext_lazyas_fromdjango.urlsimportreverse_lazyclassDjangoAdminAppSidebarExampleConfig(AppConfig):name='django_admin_app_sidebar_example'defready(self):navigation=SidebarNavigation("Navigation",[{"title":"Home","url":"/admin/","icon":"fas fa-home",},"-",{"title":"Example Index","url":reverse_lazy("admin:app_list",kwargs={"app_label":self.name}),"icon":"fas fa-building",},{"title":"Category Manager","url":reverse_lazy("admin:{0}_{1}_changelist".format(self.name,"category")),"icon":"fas fa-tree","depth":2,},{"title":"Book Manager","url":reverse_lazy("admin:{0}_{1}_changelist".format(self.name,"book")),"icon":"fas fa-file","depth":2,}])register_portlet(navigation,app_label=self.name,extra_css=["fontawesome/css/all.min.css",])
导出的API
- 在
django_admin_应用程序_侧栏.portlets.Portlet在
它是一个portlet基类。您可以使用任何可调用函数而不是Portlet,只需获取一个上下文参数并返回呈现的html字符串。在
在 - 在
django_admin_应用程序_侧边栏.portlets.SidebarNavigation在
一个简单的导航portlet。在
在 - 在
django_admin_应用程序_侧栏.portlets.register_portlet在
向系统注册portlet。在
在
django_admin_应用程序的详细信息_侧栏.portlets.register_portlet在
defregister_portlet(render,order=0,app_label=None,model_name=None,show_in_app=True,show_in_app_index=False,show_in_model_site=False,show_in_model_changelist=False,show_in_model_change=False,show_in_model_add=False,show_in_model_history=False,extra_css=None,extra_js=None):...
参数:
render
:必需的,它是Portlet实例或等效的可调用函数。在order
:portlet显示顺序app_label
:portlet将显示在哪个应用程序视图中- 如果没有,则portlet将显示在所有应用程序中。在
model_name
:将在哪个与模型相关的视图中显示portlet- 如果没有,portlet将显示在应用程序的所有视图中
show_in_app
:默认为True。在应用程序下的所有视图中显示portlet。在show_in_app_index
:默认为False。在应用程序索引视图中显示portlet。需要app_标签。在show_in_model_site
:默认为False。在与模型相关的所有视图中显示portletshow_in_model_changelist
:默认为False。在变更列表视图中显示portlet。在show_in_model_change
:默认为False。在更改视图中显示portlet。在show_in_model_add
:默认为False。在添加视图中显示portlet。在show_in_model_history
:默认为False。在历史视图中显示portlet。尚未实现
释放
v0.1.0@待办事项
- 第一次发布。在
- 项目
标签: