Django  xadmin的使用

xadmin是django的一个第三方的管理后台实现,它的功能比自带的admin功能更加强大。 
xadmin项目在github上的地址为:https://github.com/sshwsfc/xadmin 
xadmin相关文档可以在这里查看:https://xadmin.readthedocs.io/en/latest/index.html

这里简要总结下自己集成xadmin的方法,我使用的是django1.10和python3.52,xadmin是0.60。

1. 从上面github地址下载 xadmin(网上有说直接pip安装的,但我这里安装失败,可能是python3的缘故吧)。

并根据requirements.txt 安装所需要的模块。

2.创建一个新的project,并将上面目录中的xadmin目录拷贝到新的project下。

3.在项目中添加xadmin配置

1)settings.py文件 
INSTALLED_APPS中添加xadmin的安装,文档网站上是这样写的:

INSTALLED_APPS = (
...
'xadmin',
'crispy_forms',
'reversion',
...
)

2)urls.py文件 
urls里面要添加xadmin的匹配,示例如下:

from django.conf.urls import patterns, include, url
from xadmin.plugins import xversion
import xadmin #version模块自动注册需要版本控制的 Model
xversion.register_models() xadmin.autodiscover() urlpatterns = [
...
url(r'xadmin/', include(xadmin.site.urls)),
]

4.创建一个app,写models,将app注册。

python manage.py startapp hys_datamanagement

models:

from django.db import models

class UserInfo(models.Model):
"""用户表"""
user_name = models.CharField(max_length=20, unique=True, verbose_name=u"负责人") # 负责人
user_email = models.EmailField(null=True, blank=True, verbose_name=u"邮箱") # 邮箱
user_mobile = models.BigIntegerField(verbose_name=u"电话") # 电话 class Meta:
db_table = 'user_info'
verbose_name = '用户表'
verbose_name_plural = "用户表" def __str__(self):
return self.user_name

    

然后再注册app:

5.修改数据库连接信息,配置 Django 以便与 Oracle 数据库交互。

  由于本次示例使用oracle数据库现有数据,所以配置连接oracle

      首先,您必须安装对应版本的cx_Oracle。 下载地址:https://pypi.python.org/pypi/cx_Oracle 
打开 settings.py 文件,并根据您的数据库编辑与数据库相关的设置。例如,您可能按如下方式编辑它们:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.oracle',
'NAME': 'orcl',
'USER': 'hys_datamanagement',
'PASSWORD': 'hys_datamanagement',
'HOST': '192.168.168.224',
'PORT': '1521',
}
}

  注:创建数据库用户的语句:

create user hys_datamanagement identified by hys_datamanagement;
grant connect,resource to hys_datamanagement;

然后创建数据库表:

python manage.py makemigrations

python manage.py migrate

效果:

6.配置adminx.py文件

django自带的admin模块使用的是admin.py文件,xadmin模块的文件名则叫adminx.py。

admin模块在配置时使用的参数是admin.ModelAdmin,xadmin则使用object即可。然后替换admin.site.register为xadmin.site.register。如下:

# from django.contrib import admin
from .models import UserInfo
import xadmin class UserInfoAdmin(object):
list_display = ('user_name', 'user_email', 'user_mobile') xadmin.site.register(UserInfo, UserInfoAdmin)

  

然后就可以启动服务,看看效果了:

访问  http://127.0.0.1:8000/xadmin/

通过命令 python manage.py createsuperuser 创建超级用户。

登录后:

至此,基本配置就完成了。

Django xadmin的使用 (一)的更多相关文章

  1. Django+xadmin打造在线教育平台(二)

    三.xadmin后台管理 3.1.xadmin的安装 django2.0的安装(源码安装方式): https://github.com/sshwsfc/xadmin/tree/django2 把zip ...

  2. Django+xadmin打造在线教育平台(三)

    五.完成注册.找回密码和激活验证码功能 5.1.用户注册 register.html拷贝到templates目录 (1)users/views.py class RegisterView(View): ...

  3. Django+xadmin打造在线教育平台(一)

    目录 在线教育平台(一)      在线教育平台(二) 在线教育平台(三)      在线教育平台(四) 在线教育平台(五)      在线教育平台(六) 在线教育平台(七)      在线教育平台( ...

  4. 第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置

    第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本  uwsgi- ...

  5. Django xadmin引入DjangoUeditor

    Django xadmin引入DjangoUeditor 版本:python3.6.1,Django1.11.1 DjangoUeditor下载地址:https://github.com/twz915 ...

  6. 第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块

    第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块 virtualenv简介 1.安装virtuale ...

  7. 第四百节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装python3.5.1

    第四百节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装python3.5.1 1.检查系统是否安装了python [root@192 ~]# rpm -qa ...

  8. 第三百九十九节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装mysql5.6

    第三百九十九节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装mysql5.6 1.检测系统是否已经安装过mysql或其依赖,若已装过要先将其删除,否则第4步 ...

  9. 第三百九十八节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5系统环境设置

    第三百九十八节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5系统环境设置 1.Linux安装配置 注意事项: 虚拟机网卡桥接模式 不要拨VPN 如果,网络怎么都 ...

  10. 第三百九十七节,Django+Xadmin打造上线标准的在线教育平台—其他插件使用说,主题本地化设置

    第三百九十七节,Django+Xadmin打造上线标准的在线教育平台—其他插件使用说,主题本地化设置 主题设置是在xadmin\plugins\themes.py这个文件 默认xadmin是通过下面这 ...

随机推荐

  1. Jmeter聚合报告

    Label:请求的Name. #Samples:发出请求数量. Average:平均响应时间(单位:ms). Median:全部响应时间中位数,. 90%Line:90%用户的响应时间低于这个时间. ...

  2. HihoCoder - 1496:寻找最大值(高维前缀和||手动求子集)

    描述 给定N个数A1, A2, A3, ... AN,小Ho想从中找到两个数Ai和Aj(i ≠ j)使得乘积Ai × Aj × (Ai AND Aj)最大.其中AND是按位与操作. 小Ho当然知道怎么 ...

  3. HihoCoder1164 随机斐波那契(概率DP)

    描述 大家对斐波那契数列想必都很熟悉: a0 = 1, a1 = 1, ai = ai-1 + ai-2,(i > 1). 现在考虑如下生成的斐波那契数列: a0 = 1, ai = aj + ...

  4. HDU3652 B-number 数位DP第二题

    A wqb-number, or B-number for short, is a non-negative integer whose decimal form contains the sub- ...

  5. 加密shell

    shc -v -r -T -f script-name >/dev/null 2>&1

  6. .NET 使用 XPath 来读写 XML 文件

    XPath 是 XML 路径语言(XML Path Language),用来确定XML文档中某部分位置的语言.无论是什么语言什么框架,几乎都可以使用 XPath 来高效查询 XML 文件. 本文将介绍 ...

  7. 如何点焊过的镍片再次焊接到 PCBA 上?

    如何将点焊过的镍片再次焊接到 PCBA 上? 在 PCBA 上贴了镍片再点焊,这样的制造工艺可以大大减少人工处理,提高生产通过率. 由于种种原因,有些机器可能有故障需要维修,而且电池又需要拆下来,才能 ...

  8. hadoop之 hadoop用途方向

    hadoop是什么?Hadoop是一个开源的框架,可编写和运行分不是应用处理大规模数据,是专为离线和大规模数据分析而设计的,并不适合那种对几个记录随机读写的在线事务处理模式.Hadoop=HDFS(文 ...

  9. 在window上使用eclipse对hadoop进行编程

    步骤: 1.下载hadoop-eclipse-plugin-1.2.1.jar 2.把 hadoop-eclipse-plugin-1.2.1.jar"放到Eclipse的目录的" ...

  10. bzoj 1670 [Usaco2006 Oct]Building the Moat护城河的挖掘——凸包

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1670 用叉积判断.注意两端的平行于 y 轴的. #include<cstdio> ...