使用django開發遇到問題

2021-08-10 15:03:01 字數 2776 閱讀 2527

1、建立專案

1.1 安裝django :pip install django

1.2 新建目錄learning_log

1.2 進入目錄learning_log, django-admin

.py startproject learning_log . 【注】:後面那個「.」不能落下

2、python3無法安裝mysqldb,使用pymysql代替

2.1 pip install pymysql 【注】:不要使用pymysql3,版本太低,執行migrate時候會報錯「importerror: cannot import name 'thing2literal'」

2.2 在專案根下的__init__檔案中配置如下:

import pymysql

pymysql.install_as_mysqldb()

2.3 執行 python manage.py makemigrations

python manage.py migrate

3、model中,在頁面輸出物件時候,想輸出某個值顯示,比如:頁面顯示obj時候顯示obj.name,在model中的某個表對應的類中寫入**如下:

2.x : def __unicode__(self):

return

self

.name

3.x : def __str__(self):

return

self

.name

4、django的shell,輸入命令、資料後就可以通過互動終端會話以程式設計方式檢視這些資料,為了測試專案和排除故障

4.1 python manage.py shell

from learning_logs.models import topic

topic.objects.

all()

5、解決pycharm中django內部方法找不到、html無法識別django語法:

開啟pycharm的file->settings,搜尋django,然後將專案根目錄加入就好了

在setting-language

&frameworks-python template language中選擇django

6、修改templates資料夾位置:

6.1 在settings.py中,設定templates下的dirs:

'dirs': [os.path.

join(base_dir,'templates')]

, //設定在根目錄

7、登陸遇到錯誤:'wsgirequest' object has no attribute 'session'

我的middleware的配置是:

middleware =

['django.middleware.security.securitymiddleware',

'django.middleware.common.commonmiddleware',

'django.contrib.sessions.middleware.sessionmiddleware',

'django.middleware.csrf.csrfviewmiddleware',

'django.contrib.auth.middleware.sessionauthenticationmiddleware',

'django.contrib.auth.middleware.authenticationmiddleware',

'django.contrib.messages.middleware.messagemiddleware',

'django.middleware.clickjacking.xframeoptionsmiddleware',

]實際上,這是django版本的問題,1.10之前,中介軟體的key為middleware_classes, 1.10之後,為middleware。所以在開發環境和其他環境的版本不一致時,要特別小心,會有坑。

改配置為:

middleware_classes =

['django.middleware.security.securitymiddleware',

'django.middleware.common.commonmiddleware',

'django.contrib.sessions.middleware.sessionmiddleware',

'django.middleware.csrf.csrfviewmiddleware',

'django.contrib.auth.middleware.sessionauthenticationmiddleware',

'django.contrib.auth.middleware.authenticationmiddleware',

'django.contrib.messages.middleware.messagemiddleware',

'django.middleware.clickjacking.xframeoptionsmiddleware',

]就可以解決了。

8、關於static_url、staticfiles_dirs

static_url = '/static/'

staticfiles_dirs = (

os.path.join(base_dir,'static'),

)static_url :#用來在頁面顯示靜態資源用的 src=}}

staticfiles_dirs :資源在伺服器上的絕對路徑

arc engine開發遇到問題

基於教材 arcgis engine地理資訊系統開發教程 基於c net 牟乃夏主編 問題1 隨書附盤chp03.rar中引用顯示黃色嘆號 解決方法 選中引用,將其特定版本屬性改為false。問題2 繫結lisence問題 解決方法 隨書附盤中program.cs仍然需要新增繫結lisence 問題...

使用遇到的問題 Mac Pro使用遇到問題

mac os x無法休眠?教你用pmset找出原因。如何重置 mac 上的系統管理控制器 smc mac retina 合蓋後開啟突然黑屏,長按開機鍵無反應?應該是有一次修改了系統設定,解決如下 mac os x中顯示 不顯示隱藏檔案方法 命令列 mac不能複製拷貝寫入檔案到行動硬碟,u盤怎麼辦 n...

react dnd使用遇到問題總結

import react from react import from react dom import from react dnd import html5backend from react dnd html5 backend import from redux import from rea...