python管理數據庫設計_Pycharm+Django+Python+MySQL開發 后臺管理數據庫

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數據庫部分修改如下:

DATABASES ={'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'ip_db','USER':'root','PASSWORD':'root','HOST':'localhost','PORT':'3306',

}

}

urls.py修改如下:

from django.conf.urls import *

fromdjango.contrib import admin

admin.autodiscover()

urlpatterns=[

url(r'^admin/', admin.site.urls),

]

4、生成后臺管理表

在PyCharm 下方“terminal”下輸入

python manage.py migrate

接下來需要創建超級用戶的賬號密碼

python manage.py shellfromdjango.contrib.auth.models import User

user=User.objects.create_superuser('用戶名','郵箱','密碼')

這樣我們就可以進入后臺管理界面了,點擊運行程序,在瀏覽器中輸入:127.0.0.1:8000/admin

登錄后可以創建用戶、組,管理權限,修改密碼等操作。

5、自定義顯示

自定義后臺的顯示需要在models.py 進行修改,可以查看官方文檔進行自定義配置,這里簡要介紹幾項常用的

#coding=UTF-8這里為方便對中文進行編譯from__future__ import unicode_literalsfromdjango.db import models

# Create your models here.

#-*- coding:utf-8 -*-

fromdjango.db import models

# Create your models here.classPublisher(models.Model):

STATE_CHOICES=(

(u'down',u'設備已關機'),

(u'up',u'設備開機'),

(u'avi',u'此IP未分配'),

)

MODEL_CHOICES=(

(u'fwq',u'普通服務器'),

(u'gmszx',u'高密四子星'),

(u'ups',u'UPS'),

(u'ccjd',u'存儲節點'),

(u'others',u'其他'),

)

IP= models.CharField(max_length=30,help_text='Example:172.25.0.0',verbose_name='IP地址',unique=True) #unique=true則此項是全局唯一,不可以重復

STATE= models.CharField(max_length=30,verbose_name='當前狀態',choices=STATE_CHOICES) #choices是以下拉菜單顯示

MODEL= models.CharField(max_length=30, blank=True,verbose_name='型號',choices=MODEL_CHOICES) #verbose_name是網頁的顯示名稱

IDD= models.CharField(max_length=30, blank=True,verbose_name='設備編號') #blank=true則可以不填寫

USER= models.CharField(max_length=30, blank=True,verbose_name='設備使用者')

TEL= models.CharField(max_length=30, verbose_name='聯系方式', blank=True)

LOC= models.CharField(max_length=30, blank=True,verbose_name='設備位置')

NOTE= models.CharField(max_length=30, verbose_name='備注', blank=True)

TIME= models.DateTimeField(auto_now_add=True)

IPMI=models.CharField(max_length=30,help_text='Example:172.25.0.0',verbose_name='IPMI地址',unique=True,blank=True)classMeta:

verbose_name_plural='IP查詢'#這是表的網頁顯示名稱

verbose_name='IP'

下面需要更新數據庫

在terminal終端輸入以下命令

python manage.py makemigrations

python manage.py migrate

最后在admin.py中修改配置

fromdjango.contrib import admin

# Register your models here.fromdjango.contrib.auth.models import UserfromipApp.models import Publisher

#fromipApp.models import Publisher, Author, BookclassPublisherAdmin(admin.ModelAdmin):

search_fields= ('IP','STATE','MODEL','USER') #根據屬性搜索

list_display=('IP','STATE','USER','TEL') #列表顯示的屬性

list_filter= ('STATE',) #篩選

pass

admin.site.register(Publisher,PublisherAdmin)

效果如圖

修改model后都需要makemigrations命令更新數據庫,不過總是報錯,目前還沒有搞定,所以我在修改models,比如增加列,會在數據庫命令行直接使用alter命令添加,這樣就不需要使用makemigrations命令。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/396483.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/396483.shtml
英文地址,請注明出處:http://en.pswp.cn/news/396483.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

你鼓舞了我是世界杯主題曲嗎_選擇方法和鼓舞人心的網站列表

你鼓舞了我是世界杯主題曲嗎by Kristoffer Andreasen通過克里斯托弗安德烈森 選擇方法和鼓舞人心的網站列表 (The pick and choose approach and a list of inspirational websites) In the past couple of years I have created quite a few websites. In the beginning, I h…

共享程序集GAC

原文標題: 原文地址:https://www.cnblogs.com/1996V/p/9037603.html 共享程序集GAC 我上面說了這么多有關CLR加載程序集的細節和規則,事實上,類似于mscorlib.dll、System.dll這樣的FCL類庫被引用的如此頻繁,它已經是我…

彈簧觸摸開關原理圖_10年老電工經驗之談:常見的開關電源那些事兒

隨著電控系統中對控制回路安全性要求提高,控制回路的工作電壓是越來越趨于直流低壓化。由此,控制回路內各種使用直流電源的傳感器、中小微型直流繼電器等電器裝置是日益增多。也正因如此,電控系統內不同品牌的開關電源也相應地多了起來。因牽…

erlang mysql連接超時_Erlang數據庫-(一)Erlang與Mysql的連接

下載:http://download.csdn.net/detail/hjhjava/7088277把該文件的東西全部編譯好,然后根據下面的解釋就可以操作Mysql的。很簡單~-record(row,{a1 0, a20}).%% 第一個參數是該鏈接的名字(根據它來操作Mysql),第二參數是本機號(ip地址)%% &a…

SQL SERVER 中 GO 的用法2

具體不廢話了&#xff0c;請看下文詳解。 12345678910use db_CSharpgoselect *,備注casewhen Grade>90 then 成績優秀when Grade<90 and Grade>80 then 成績良好when Grade<80 and Grade>70 then 成績及格else 不及格endfrom tb_Grade如果只是執行一條語句&…

js中判斷值不等于undefined

文章&#xff1a;JS 中判斷空值 undefined 和 null轉載于:https://www.cnblogs.com/Tpf386/p/9804496.html

reddit_我在3天內瘋狂地審查了Reddit上的50個投資組合,從中學到了什么。

redditI’ve always enjoyed critiquing applicants’ portfolios at the design studio where I work. And I also often ask for feedback on my own designs on Reddit’s webdev subreddit.我一直都很喜歡在我工作的設計工作室里評估申請人的作品集。 我也經常在Reddit的we…

【BZOJ1001】[BeiJing2006]狼抓兔子

挺簡單一個題&#xff0c;最小割模板 我的感覺就是可能建圖的時候會比較麻煩吧&#xff0c;畢竟三個方向。 #include <cctype> #include <climits> #include <cstdio> #include <cstring> #include <iostream>#define debug(x) std::cout <&l…

管理活動目錄域服務實訓_管理學院學生黨支部開展實踐教育基地服務活動

紅星E校有態度 有溫度 可關注為進一步加強黨的建設&#xff0c;深化管理學院學生黨支部與實踐基地的互動性&#xff0c;2020年9月11至12日&#xff0c;管理學院學生黨支部協助白鶴村村委實踐基地完成第七次人口普查相關工作&#xff0c;共計6名預備黨員參與。工作開始前的培訓會…

mysql 漢編碼 的選_peewee連接mysql漢語言數據編碼_mysql

peewee連接mysql中文數據編碼系統是win7 x64python 2.7.6的site.py里面編碼設定為 utf-8py文件首行指定 #coding:utf-8mysql 5.5.38安裝時指定代碼為utf-8peewee的連接數據庫代碼為&#xff1a;db MySQLDatabase(host 127.0.0.1, user root, passwd 1, database mz, chars…

配置windows失敗,還原更新,請勿關機

最近給同事裝系統&#xff0c;偶爾會出現如下問題&#xff1a; 如果是這種情況&#xff0c;只能耐心等待了&#xff0c;因為關機也沒用&#xff01; 轉載于:https://www.cnblogs.com/lijy/p/5327844.html

使用Express和MongoDB構建簡單的CRUD應用程序

by Zell Liew由Zell Liew 使用Express和MongoDB構建簡單的CRUD應用程序 (Building a Simple CRUD Application with Express and MongoDB) For a long time, I didn’t dare venture into back end development. I felt intimidated because of my lack of an academic backgr…

python元類的使用_python中元類用法實例

本文實例講述了python中元類用法&#xff0c;分享給大家供大家參考。具體方法分析如下&#xff1a;1.元類(metaclass)是用來創建類的類2.type(object):返回一個對象的類型&#xff0c;與object.__class__的值相同&#xff0c;type(name,bases,dict):創建一個新的type類型&#…

使用uicollectionView時需要注意的問題

1.UICollectionView使用流水布局——UICollectionViewFlowLayout時&#xff0c;需要滿足條件&#xff1a; 每個item(即cell)的大小是一樣的&#xff0c;不僅是寬度&#xff0c;還有高度。這樣&#xff0c;當collectionview的寬度發生變化時&#xff0c;item能將其動態填充。ite…

hiveql函數筆記(二)

1、數據查詢 //提高聚合的性能 SET hive.map.aggrtrue; SELECT count(*),avg(salary) FROM employees; //木匾不允許在一個查詢語句中使用多于一個的函數&#xff08;DISTINCT。。。&#xff09;表達式 SELECT count(DISTINCT symbol) FROM stocks; 表生成函數&#xff1a; exp…

jQuery 常用的方法

<!DOCTYPE html><html lang"en"><head> <meta charset"utf-8"/> <title>品牌列表案例</title> <script src"js/jquery-2.1.1.min.js" rel"script"></script> <script…

swift 從手機選照片_19元起!定制專屬手機殼!還可免費打印照片...

△劇透&#xff1a;文末有福利現在的年輕人體內涌動的都是追求有趣有特色的靈魂希望自己是這條gai最獨一無二的仔撞衫撞包撞手機殼可以說是當代年輕人三大時尚忌諱尤其是手機殼極為重要畢竟換殼≈換機只需要幾十元買新殼就可以擁有換新機般的儀式感不過作為手機殼老手都知道在某…

新手也能學會本地調試微信,natapp 官網映射

本地調試微信的新手指引~ 照著配置&#xff0c;一定可以配置成功&#xff0c;實現本地調試微信&#xff0c;公司好幾個同事按照我寫的步驟&#xff0c;都獨立配成功了。 1.首選在natapp注冊一個賬號&#xff0c;申請免費隧道或者購買隧道&#xff0c;我買了一個月9元的付費隧道…

在JavaScript中反轉字符串的三種方法

This article is based on Free Code Camp Basic Algorithm Scripting “Reverse a String”本文基于Free Code Camp基本算法腳本“ Reverse a String ” Reversing a string is one of the most frequently asked JavaScript question in the technical round of interview. …

c實現三角形角度大于一個值_初中數學三角形知識點小結

▊ 三角形兩邊定理&#xff1a;三角形兩邊的和大于第三邊。推論&#xff1a;三角形兩邊的差小于第三邊。▊ 三角形中位線定理三角形的中位線平行于第三邊&#xff0c;并且等于它的一半。▊ 三角形的重心三角形的重心到頂點的距離是它到對邊中點距離的2倍。在三角形中&#x…