Pycharm+Django+Python+MySQL開發 後台管理資料庫

來源:互聯網
上載者:User

標籤:過程   伺服器   k&r   自己的   .net   寫代碼   ken   ons   帳號密碼   

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 *from django.contrib import adminadmin.autodiscover()urlpatterns = [    url(r‘^admin/‘, admin.site.urls),]

4、產生後台管理表

在PyCharm 下方“terminal”下輸入

python manage.py migrate

接下來需要建立超級使用者的帳號密碼

python manage.py shellfrom django.contrib.auth.models import Useruser=User.objects.create_superuser(‘使用者名稱‘,‘郵箱‘,‘密碼‘)

這樣我們就可以進入後台管理介面了,點擊運行程式,在瀏覽器中輸入:127.0.0.1:8000/admin

登入後可以建立使用者、組,系統管理權限,修改密碼等操作。

5、自訂顯示

自訂背景顯示需要在models.py 進行修改,可以查看官方文檔進行自訂配置,這裡簡要介紹幾項常用的

#coding=UTF-8  這裡為方便對中文進行編譯from __future__ import unicode_literalsfrom django.db import models# Create your models here.#-*- coding:utf-8 -*-from django.db import models# Create your models here.class Publisher(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)    class Meta:        verbose_name_plural=‘IP查詢‘   #這是表的網頁顯示名稱        verbose_name=‘IP‘

下面需要更新資料庫

在terminal終端輸入以下命令

python manage.py makemigrationspython manage.py migrate

最後在admin.py中修改配置

from django.contrib import admin# Register your models here.from django.contrib.auth.models import Userfrom ipApp.models import Publisher#from ipApp.models import Publisher, Author, Bookclass PublisherAdmin(admin.ModelAdmin):    search_fields = (‘IP‘,‘STATE‘,‘MODEL‘,‘USER‘) #根據屬性搜尋    list_display=(‘IP‘,‘STATE‘,‘USER‘,‘TEL‘)  #列表顯示的屬性    list_filter = (‘STATE‘,)   #篩選    passadmin.site.register(Publisher,PublisherAdmin)

效果

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

Pycharm+Django+Python+MySQL開發 後台管理資料庫

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.