鄙人初出茅庐,请各位前辈多指教。
导航主目录图标设置,也就是自定义的app名称的图标
(1)修改源码
修改xadmin/templates/xadmin/includes/sitemenu_accordion.html文件
{% elif item.first_icon %} {##} {#这个标签注释后,当子导航设置了图标时app名称不显示图标#}
{% autoescape off %} {% trans item.title %} {% endautoescape %} {#这里显示的自定义app名称,加上{% autoescape off %}{% endautoescape %}后在自定义名称时可以通过class自定义图标#}
(2)在当前app目录的apps.py文件里设置后台app名称时用class自定义图标
class TestConfig(AppConfig):
name = 'app_Test' # app目录名称
verbose_name = '测试模块' # 要设置的中文名称
{{ dateString|date:'Y-m-d' }} 显示xxxx-xx-xx
(1)在app下新建templatetags文件夹
(2)文件夹中新建py文件
(3)导包from django import template
(4)register = template.Library() # 声明注册类
(5)
1)@register.filter自定义过滤器,后面跟方法;
2)@register.simple_tag自定义标签,后面跟方法
(6)前端加载{% load tagname %},使用方式和一般的标签及过滤器一样
{{ 5|surplus:6 }} 5是第一个参数,6是第二个参数
(1)引入各个包
(2)定义对象(继承BaseAdminPlugin)
class Test(BaseAdminPlugin):
menu = {}#定义字段类型
def init_request(self, *args, **kwargs):
#初始化
init = False
if xxx == x:
#初始化条件
init = True
return bool(init)
# Block View
def block_nav_menu(self, context, nodes):
#定义插件放的位置,和方法命名相关,其他方法命名去其他插件出查看
#传递数据
context.update(
{"x": self.menu["x"], "xx": self.menu["xx"], "xxx": self.menu["xxx"]})
#加载html
nodes.append(loader.render_to_string('xadmin/user/xxx.html', get_context_dict(context)))
def get_media(self, media):
#网页样式和js加载,此处的样式文件和js放在xadmin下面的静态文件中
media = media + self.vendor('xadmin.plugin.xx.js', 'xadmin.plugin.xx.css')
return media
(3)插件注册
site.register_plugin(Test, ListAdminView)
(4)init.py初始化加载
在plugins中的init.py添加插件名称
某个错误:eg: raise ValueError("Please check the fields for correct!")……
Message等级如下
“
'add_message', 'get_messages',
'get_level', 'set_level',
'debug', 'info', 'success', 'warning', 'error',
'MessageFailure',
”
success和error常用
mes='success'
message='成功'!
return self.message_user(message, mes)
先继承div的class,再在里面写新的内容
{% block breadcrumbs %}
{% endblock %}
Django继承基础模板添加自己的stytle
{% block extrastyle %}
{#这里可以添加自己自定义的style#}
{% endblock %}