標籤:過程 伺服器 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開發 後台管理資料庫