標籤:blank pip display env tools 使用者管理 快速 tab strong
1.建立python虛擬環境
pip install virtualenvwrapper-win
mkvirtualenv env3.4
workon env3.4
deactivate
pip install virtualenv
virtualenv -p c:\Python27\python.exe env2.7
cd env2.7\Scripts\activate
deactivate
2.安裝django
pip install django==1.9.8
3.安裝mysql python 驅動
http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python
4.配置setting中的DATABASES
填寫連結資料庫的
使用者名稱
密碼
host
資料庫名
1 DATABASES = { 2 ‘default‘: { 3 #‘ENGINE‘: ‘django.db.backends.sqlite3‘, 4 ‘ENGINE‘: ‘django.db.backends.mysql‘, 5 #‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘), 6 ‘NAME‘: ‘learndjango‘, 7 ‘USER‘: ‘root‘, 8 ‘PASSWORD‘:‘‘, 9 ‘HOST‘:‘127.0.0.1‘,10 ‘OPTIONS‘ : { "init_command":"SET foreign_key_checks = 0;", },11 12 }13 14 }
5.產生django預設的資料表
pycharm中tools run manager.py task
makmigrations
migrate
6. 建立app(一般都是建立user app)
tools run manager.py task
1.startapp appName(users)
接下來編輯 models.py 設計對象屬性
user
繼承原有的AbstractUser 並添加 暱稱 生日 性別 地址 手機號碼 頭像
對於頭像使用到imageFiled屬性 依賴python 的pillow包
pip install pillow
前面步驟都建立完成後使用
tools run manager.py task
1.makemigrations apps
2.migrate
點擊運行django項目
會提示是否刪除 auth|user 表 選yes
tools run manager.py task
2.startapp appName(courses)
在django中表關係使用models.ForeignKey 來建立
model.py 設計對象屬性
courses(課程表)
1-n(一對多)課程章節lesson(章節表)
1-n(一對多)課程小章節(video表)
lessonRecourse課程資源表
3.startapp appName(organization)
model.py 設計對象屬性
courseOrg(機構基本資料表)
teacher(教師基本資料)
city(城市資訊)
4.startapp appName(operation)
model.py 設計對象屬性
userAsk(使用者諮詢表)
userCourseComment(使用者課程評論表)
userFav(使用者收藏表)
userMessage(使用者提示資訊表)
userCourse(使用者學習課程表)
程式碼範例
1 class userProfile(AbstractUser): 2 nickName = models.CharField(max_length= 50, verbose_name=u"暱稱", default="") 3 birthday = models.DateField(verbose_name=u"生日", null= True, blank=True) 4 gender = models.CharField(choices=(("male",u"男"),("female",u"女")), default="female", max_length= 6, verbose_name=u"性別") 5 address = models.CharField(max_length= 100, default=u"") 6 mobile = models.CharField(max_length= 11, null=True, blank=True) 7 image = models.ImageField(upload_to="image/%Y/%m", default=u"image/default.png", max_length= 100) 8 9 class Meta:10 verbose_name = u"使用者資訊"11 verbose_name_plural = verbose_name12 13 def __unicode__(self):14 return self.username
7. 在setting 中的 INSTALL_APPS 中對建立的app進行註冊
8.將model註冊到xadmin中 快速搭建後台管理系統
from .models import 對象(user)
import xadmin
“註冊”
class 對象(user)Admin(object):
list_display = [‘屬性列表用於在xadmin展示‘,]
list_filter = [‘屬性列表用於在xadmin中進行過濾‘,]
search_fields = [‘屬性列表用於在xadmin中進行搜尋‘,]
“關聯”
xadmin.site.register(user,userAdmin)
9.進行全域的替換工作logo footer.....
app 下面的apps用來修改菜單顯示內容 verbose_name = u"XXXXX"
在 init 檔案中是配置生效 default_app_config = "XXX.apps.XXXConfig"
1.將所有的app放到建立的apps檔案夾下面
需要在setting中添加apps到路徑裡邊 sys.path.insert(0, os.path.join(BASE_DIR, ‘apps‘))
2.使用靜態檔案夾在setting中添加程式碼片段
STATICFILES_DIRS = [
os.path.join(BASE_DIR , ‘static‘)
]
3.定義AUTH_USER_MODEL = ‘users.userProfile‘ 去覆蓋原有的基礎user表
4.#USE_TZ = True #True使用UTC時間 False 使用本地時間
5. app 下的admin.py 用來註冊後台管理系統
class userProfileAdmin(admin.ModelAdmin):
"註冊"
pass
"關聯"
admin.site.register(userProfile, userProfileAdmin)
makemigrations app 產生一個比對記錄
#No changes detected in app ‘messages‘ 要在setting 中的apps 進行註冊
migrate 產生資料表
model 設計(ORM):
url name = ‘XDXXX‘ 在頁面上的action={%url ‘XDXXX‘%}
django apps設計
django apps model 設計
django apps model 資料表產生與修改
user 使用者管理
course 課程管理
organization 機構和講師管理
operation 使用者操作管理(用來解決循環參考的問題)
使用xadmin遇到的一些錯誤
No module named future.utils pip install future
No module named import_export.admin pip install django-import-export
取消外鍵檢查
1 DATABASES = { 2 ‘default‘: { 3 #‘ENGINE‘: ‘django.db.backends.sqlite3‘, 4 ‘ENGINE‘: ‘django.db.backends.mysql‘, 5 #‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘), 6 ‘NAME‘: ‘learndjango‘, 7 ‘USER‘: ‘root‘, 8 ‘PASSWORD‘:‘‘, 9 ‘HOST‘:‘127.0.0.1‘,10 ‘OPTIONS‘ : { "init_command":"SET foreign_key_checks = 0;", },11 12 }13 14 }
pycharm 添加git
django 使用xadmin pip install xadmin 依賴自己安裝好 在installapp 裡面註冊 修改urls 為xadmin
Django1.9.8 + Xadmin + Windows 快速搭建網站