xadmin

xadmin安装,可以选用直接copy源码,将这个目录设置成根搜索路径
在settings中的installed_app增加xadmin和crispy_forms。
urls中xadmin替换admin。import xadmin 
数据库同步
在创建的app下增加adminx.py文件,django会自动寻找这个文件。

adminx:
与admin编写相似:
基本上的属性有筛选search_fields ,过滤list_filter,显示list_display 。
import xadmin
from .models import EmailVerifyRecord
class EmailVerifyRecordAdmin(object):
    list_display = ['code', 'email', 'send_type', 'send_time']
    search_fields = ['code', 'email', 'send_type']
    list_filter = ['code', 'email', 'send_type', 'send_time']
 
xadmin.site.register(EmailVerifyRecord, EmailVerifyRecordAdmin)

使用主题:
from xadmin import  views
class BaseSetting(object):
    enable_themes = True
    use_bootswatch = True
xadmin.site.register(views.BaseAdminView,BaseSetting)

设置页头和页脚和左侧多表收缩:
class GlobalSettings(object):
    site_title = 'title'
    site_footer = 'footer'
···menu_style = "accordion"
xadmin.site.register(views.CommAdminView,GlobalSettings)

修改app的名称在xadmin中显示
每个app都有app.py文件,在config类中增加verbose_name=‘appname’.
__init__.py文件,在其中导入设置的config类:default_app_config = 'users.apps.UsersConfig'

icon:
adminx:
 EmailVerifyRecordAdmin类中增加:model_icon = 'fa fa-address-book-o'
这个icon的文件放在font-awesome中,下载的icon文件直接替换掉这个文件。

一个model注册成2个管理器
models中:
class course(models.Model):
....
class BannerCourse(Course):
    class Meta:
        verbose_name = 'bannercourse'
        verbose_name_plural = verbose_name
        proxy = True
adminx:
class CourseAdmin(object):
...
def queryset(self):
        qs = super(CourseAdmin, self).queryset()
        qs = qs.filter(is_banner=False)
        return qs
class BannerAdmin(object):
...
def queryset(self):
        qs = super(CourseAdmin, self).queryset()
        qs = qs.filter(is_banner=True)
        return qs

xadmin.site.register(Course, CourseAdmin)
xadmin.site.register(BannerCourse, BannerCourseAdmin)
queryset方法是用于区分一个表中的不同数据,如果不设置,xadmin中显示banner和course的数据是完全一样的。

管理器嵌套,只能一层嵌套
假设lesson是course的外键
class LessonInline(object):
        model = Lesson
        extra = 0
class CourseAdmin(object):
        ...
        inlines = [LessonInline]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值