Django框架十分简单易用,适合搭建个人博客网站。网上有很多教程,大多是关于命令行操作Django,这里分享一些用最新工具进行Django开发过程,主要是PyCharm太强大,不用有点可惜。

第一次写技术开发类的博文,可能抓不到重点,详略也可能失衡,感谢支持。

环境&工具:Windows server 2012  , PyCharm 2016.2.1 , Django 1.10 , Python 2.7 , MySQL Community 5.7.14

0、创建前的配置

安装MySQL,并已设置操作密码

1、创建工程

在PyCharm 中创建新工程,选择Django 工程,输入路径和应用名称,创建工程就好

这是创建后的初始界面

2、创建、操作数据库

PyCharm 可以创建、读写数据库,不过如果想与工程相连,还是需要在工程中用代码连接,单击Database侧边栏(位置随个人喜好设置,默认在右侧),添加Database,如图(图是写博文时补的)。

填写连接信息,Database栏可以填写具体数据库名称,不填写则加载所有数据库。第一次使用PyCharm时会提示设置操作密码,填写完成可以点击“Test Connection” 测试连接情况,没有问题点击“OK”,输入操作密码即可完成连接。

左侧为MySQL目录,如果修改、查看没有找到自己的数据库,点击“more schemes”,如图

可以在命令行直接操作数据库,如图:

双击左侧“table1” ,可以图形化显示数据表。

3、在工程中创建Database,修改配置

到目前为止好像我们还没有写代码(数据库那段是展示PyCharm强大的数据库操作),和老版本不同,在修改settings.py 只需要修改数据库连接配置即可。

settings.py数据库部分修改如下:

  1. DATABASES = {
  2. 'default': {
  3. 'ENGINE': 'django.db.backends.mysql',
  4. 'NAME': 'ip_db',
  5. 'USER':'root',
  6. 'PASSWORD':'root',
  7. 'HOST':'localhost',
  8. 'PORT':'',
  9.  
  10. }
  11. }

urls.py修改如下:

  1. from django.conf.urls import *
  2. from django.contrib import admin
  3. admin.autodiscover()
  4. urlpatterns = [
  5. url(r'^admin/', admin.site.urls),
  6. ]

4、生成后台管理表

在PyCharm 下方“terminal”下输入

  1. python manage.py migrate

接下来需要创建超级用户的账号密码

  1. python manage.py shell
  2. from django.contrib.auth.models import User
  3. user=User.objects.create_superuser('用户名','邮箱','密码')

这样我们就可以进入后台管理界面了,点击运行程序,在浏览器中输入:127.0.0.1:8000/admin

登录后可以创建用户、组,管理权限,修改密码等操作。

5、自定义显示

自定义后台的显示需要在models.py 进行修改,可以查看官方文档进行自定义配置,这里简要介绍几项常用的

  1. #coding=UTF- 这里为方便对中文进行编译
  2. from __future__ import unicode_literals
  3.  
  4. from django.db import models
  5.  
  6. # Create your models here.
  7. #-*- coding:utf- -*-
  8. from django.db import models
  9.  
  10. # Create your models here.
  11. class Publisher(models.Model):
  12. STATE_CHOICES=(
  13. (u'down',u'设备已关机'),
  14. (u'up',u'设备开机'),
  15. (u'avi',u'此IP未分配'),
  16. )
  17. MODEL_CHOICES=(
  18. (u'fwq',u'普通服务器'),
  19. (u'gmszx',u'高密四子星'),
  20. (u'ups',u'UPS'),
  21. (u'ccjd',u'存储节点'),
  22. (u'others',u'其他'),
  23. )
  24.  
  25. IP = models.CharField(max_length=,help_text='Example:172.25.0.0',verbose_name='IP地址',unique=True) #unique=true则此项是全局唯一,不可以重复
  26. STATE = models.CharField(max_length=,verbose_name='当前状态',choices=STATE_CHOICES) #choices是以下拉菜单显示
  27. MODEL = models.CharField(max_length=, blank=True,verbose_name='型号',choices=MODEL_CHOICES) #verbose_name是网页的显示名称
  28. IDD = models.CharField(max_length=, blank=True,verbose_name='设备编号') #blank=true 则可以不填写
  29. USER = models.CharField(max_length=, blank=True,verbose_name='设备使用者')
  30. TEL = models.CharField(max_length=, verbose_name='联系方式', blank=True)
  31. LOC = models.CharField(max_length=, blank=True,verbose_name='设备位置')
  32. NOTE = models.CharField(max_length=, verbose_name='备注', blank=True)
  33. TIME = models.DateTimeField(auto_now_add=True)
  34. IPMI=models.CharField(max_length=,help_text='Example:172.25.0.0',verbose_name='IPMI地址',unique=True,blank=True)
  35.  
  36. class Meta:
  37. verbose_name_plural='IP查询' #这是表的网页显示名称
  38. verbose_name='IP'

下面需要更新数据库

在terminal终端输入以下命令

  1. python manage.py makemigrations
  2. python manage.py migrate

最后在admin.py中修改配置

  1. from django.contrib import admin
  2.  
  3. # Register your models here.
  4. from django.contrib.auth.models import User
  5. from ipApp.models import Publisher
  6. #from ipApp.models import Publisher, Author, Book
  7.  
  8. class PublisherAdmin(admin.ModelAdmin):
  9. search_fields = ('IP','STATE','MODEL','USER') #根据属性搜索
  10. list_display=('IP','STATE','USER','TEL') #列表显示的属性
  11. list_filter = ('STATE',) #筛选
  12. pass
  13. admin.site.register(Publisher,PublisherAdmin)

效果如图

修改model后都需要makemigrations命令更新数据库,不过总是报错,目前还没有搞定,所以我在修改models,比如增加列,会在数据库命令行直接使用alter命令添加,这样就不需要使用makemigrations命令。

Pycharm+Django+Python+MySQL开发 后台管理数据库的更多相关文章

  1. PyCharm Django Python 开发环境配置 详细教程

    PyCharm Django Python 开发环境配置 详细教程 1. Python 下载及安装 (1)根据需要的版本去 Python 官网(https://www.python.org/downl ...

  2. 第一篇:Win10系统搭建Python+Django+Nginx+MySQL 开发环境详解(完美版)

    Win10+Python+Django+Nginx+MySQL 开发环境搭建详解 PaulTsao 说明:本文由作者原创,仅供内部参考学习与交流,转载引用请注明出处,用于商业目的请联系作者本人. Wi ...

  3. Django Python MySQL Linux 开发环境搭建

    Django Python MySQL Linux 开发环境搭建 1.安装Python 进行Python开发,首先必须安装python,对于linux 或者Mac 用户,python已经预装. 在命令 ...

  4. Django基础-003 配置Django自带的后台管理,操作数据库

    插入测试数据,可以自己写页面来插入数据 也可以使用Django自带的后台管理,来操作数据表 1.创建用户 python manage.py createsuperuser 2.在浏览器输入地址,进入D ...

  5. Django:(博客系统)使用使用mysql数据->后台管理tag/post/category的配置

    Django后台一般是不需要人为的去开发的,因为django已经通过配置实现哪些模块是后台需要管理,如何排序,列表展示哪些列,列显示名称,是否为空(默认值),过滤条件,分页页数,列表中哪些项可编辑等等 ...

  6. Django学习day8——admin后台管理和语言适应

    Django最大的优点之一,就是体贴的为你提供了一个基于项目model创建的一个后台管理站点admin.这个界面只给站点管理员使用,并不对大众开放. 1. 创建管理员用户 (django) E:\Dj ...

  7. 使用django的admin的后台管理界面

    django的admin后台管理界面是方便我们对数据库操作的  是一个在浏览器显示的  图形化界面数据库操作 我们先在django中的admin中把我们需要在图形化界面中进行操作的表导入进去: 先把m ...

  8. python测试开发django-13.操作数据库(增删改查)

    前言 django的models模块里面可以新增一张表和字段,通常页面上的数据操作都来源于数据库的增删改查,django如何对msyql数据库增删改查操作呢? 本篇详细讲解django操作mysql数 ...

  9. Python+MySQL开发医院网上预约系统(课程设计)一

    一:开发环境的配置 1:桌面环境为cnetos7+python2.7 2:MySQL的安装与配置 1)MySQL的安装 MySQL官方文档: http://dev.mysql.com/doc/mysq ...

随机推荐

  1. Pulse-code modulation

    脉冲编码调制(Pulse Code Modulation,PCM),由A.里弗斯于1937年提出的,这一概念为数字通信奠定了基础,60年代它开始应用于市内电话网以扩充容量,使已有音频电缆的大部分芯线的 ...

  2. eclipse 重启/打开内置浏览器

    重启 Eclipse 重启选项允许用户重启 Eclipse. 我们可以通过点击 File 菜单选择 Restart 菜单项来重启 Eclipse. Eclipse 内置浏览器 Web 浏览器 Ecli ...

  3. RK3288 make otapackage 出错的问题【转】

    本文转载自:http://blog.csdn.net/u010439962/article/details/51734631 Installed file list: out/target/produ ...

  4. linux文件读写 文件锁、select、poll【转】

    本文转载自:http://blog.csdn.net/fansongy/article/details/6853395 一.文件锁 文件锁用于多个用户共同使用或操作同一个文件.有读锁的时候可以再加读锁 ...

  5. I.MX6 DNS 查看、修改方法

    /************************************************************************** * I.MX6 DNS 查看.修改方法 * 说明 ...

  6. 【IOI 1996】 Network of Schools

    [题目链接] 点击打开链接 [算法] 对于第一问,将这个图缩点,输出出度为零的点的个数 对于第二问,同样将这个图缩点,输出入度为零.出度为零的点的个数的最大值 [代码] #include <al ...

  7. gunicorn部署Flask服务

    作为一个Python选手,工作中需要的一些服务接口一般会用Flask来开发. Flask非常容易上手,它自带的app.run(host="0.0.0.0", port=7001)用 ...

  8. linux文件名乱码时删除或改名的方式(转载)

    转自:http://www.linuxsa.cn/when-linux-file-name-topsy-turvy-deleted-or-renamed.html linux文件名乱码时删除或改名的方 ...

  9. ubuntu安装IDEA和PYCHARM

    IDEA和PYCHAR的下载以及安装步骤一样. 1.下载免费学习版本(Community) 2.解压文件到opt文件夹下面sudo tar -zxvf xxx -C /opt 3.进入解压之后的bin ...

  10. django templates模板

    Django templates模板 HTML代码可以被直接硬编码在views视图代码中,虽然这样很容易看出视图是怎么工作的,但直接将HTML硬编码到视图里却并不是一个好主意. 让我们来看一下为什么: ...