由于使用的pycharm是社區(qū)版本的酪耕,django需要自行安裝呜象,那么我們下面就來折騰一番异逐。
Django介紹
Django是一個開放源代碼的Web應用框架捶索,由Python寫成。運用了MVT模式(Model,View,Template)灰瞻,主要目標是使得開發(fā)復雜的腥例、數據庫驅動網站變得簡單,Django注重組件的重用性和“可插拔性”酝润,敏捷開發(fā)和DRY法則(Don't Repeat Yourself)燎竖。Django還提供了可選的創(chuàng)建、閱讀要销、更新构回、刪除界面。
Anaconda安裝Django2.0
在Linux環(huán)境下Anaconda安裝Django疏咐,首先你需要確保安裝Anaconda纤掸。查看前面的文章有涉及,這里就不展開了浑塞。
輸入下面代碼借跪,就可以看到你創(chuàng)建的一些環(huán)境。
conda info --envs
接下來創(chuàng)建一個新的環(huán)境來安裝Django酌壕,使用"conda cteate"命令來創(chuàng)建掏愁,
conda create --name django-learning python=3
提示你Proceed(y/n)?輸入y進行安裝
接下來進行訪問這個新環(huán)境
source activate django-learning
安裝完成后就可以進行安裝Django了,使用pip進行安裝卵牍。
pip install django==2.0.2
上面的說不不推薦使用果港,這里為了簡單,加上sudo再次執(zhí)行糊昙。
使用下面語句進行測試自己的電腦安裝好沒有
python -c "import django;print(django.get_version())"
退出環(huán)境
source deactivate
卸載環(huán)境
conda remove --name django-learning --all
在windows環(huán)境下辛掠,流程基本一樣,只是唯一一點兒區(qū)別是:不使用source释牺,直接用activate [your environment name]就可以
PyCharm開源社區(qū)版+Django搭建web開發(fā)環(huán)境
因為社區(qū)版不像商業(yè)版那樣可以直接通過Django來創(chuàng)建項目萝衩,所以我們需要先創(chuàng)建項目,再通過Pycharm打開船侧。
默認的情況下欠气,Pycharm的項目會保存在/Home/PycharmProjects下面。我們可以在Home目錄下镜撩,創(chuàng)建這個文件夾预柒,然后在文件夾里面打開終端。
由于我們的django是安裝在anaconda下面的隔離環(huán)境的袁梗,所以pycharm是找不到的宜鸯,這里通過命令行切換
source activate django-learning
如下圖則切換成功。
創(chuàng)建項目
項目名稱Demo自行修改
django-admin startproject Demo
創(chuàng)建app應用
打開Pycharm遮怜,open淋袖,選擇剛才創(chuàng)建的項目,打開Termina锯梁,創(chuàng)建web應用即碗,應用名稱web自行修改
python manage.py startapp web
這里只是創(chuàng)建了項目module焰情,還沒有生成對應的表,作用到數據庫剥懒,這個時候需要執(zhí)行
在數據庫中創(chuàng)建默認表格
python manage.py migrate
開啟服務
使用 python manage.py runserver 來運行服務器内舟。
python manage.py runserver
這只適用測試環(huán)境中使用。正式發(fā)布的服務初橘,我們需要一個可以穩(wěn)定而持續(xù)的服務器验游,比如apache, Nginx, lighttpd等。
如上圖表示服務運行起來之后保檐,可以在瀏覽器輸入默認的訪問地址127.0.0.1:8000
本地環(huán)境直接安裝django
pycharm識別不了django的包引用耕蝉,應該是項目配置哪里出問題了,這里先不去解決了夜只,前面的過程就相當于學習了垒在。
直接在當前環(huán)境安裝django
sudo pip install django
然后解決環(huán)境依賴問題
sudo conda install -p /home/philos/anaconda3 django -y
pycharm可以正常識別了。
接下來進入代碼層面的一些簡單修改
項目結構
mamage.py
與項目進行交互的命令行工具集的接口盐肃,項目管理器
執(zhí)行manage查看所有命令
python manage.py
Demo目錄:
項目的一個容器爪膊,包含項目的一些基本配置,目錄名稱不建議修改
Demo/wsgi.py (Python web server gateway interface)
python 服務器網關接口砸王,python應用與web服務器之間的接口推盛,該文件在項目開發(fā)中一般不做修改
urls.pyweb
url配置文件,Django項目中所有地址(頁面)都需要我們自己去配置URL
settings.py
項目的總配置文件谦铃,里面包含了數據庫耘成、web應用、時間等各種配置里面包含:
1)BASE_DIR驹闰,項目的根目錄
2)SECRET_KEY瘪菌,安全碼,Django生成項目的時候自動生成
3)DEBUG嘹朗,調試開關师妙,項目發(fā)布的時候需要關閉
4)INSTALLED_APPS,自己創(chuàng)建的應用屹培,需要在這里添加注冊默穴,相當于引用module,組件化插入
5):MIDDLEWARE褪秀,中間件蓄诽,Django自帶的工具集
6):ROOT_URLCONF,配置URLS的路徑
7):TEMPLATES媒吗,模板的配置文件
8):DATABASES仑氛,數據庫配置
9):STATIC_URL,靜態(tài)文件的地址,Static files (CSS, JavaScript, Images)
init.py
python中聲明模塊的文件,內容默認為空锯岖。
添加頁面
在urls.py中添加代碼(路由)
path(r’mainpage’, views.index, name=’index’)介袜,
這里mainpage是需要在瀏覽器中輸入的接口名稱,比如http://127.0.0.1:8000/mainpage,而index則是輸入該網址之后嚎莉,相應會被調用的接口米酬。當index接口被調用時沛豌,根據上一步中的代碼趋箩,index.html就會被加載。此時用戶就會看到index.html的內容加派。
注意叫确,如果是網站主頁的話,可以寫為path(r”, views.index, name=’index’)芍锦,這里將接口名稱置空竹勉,表示在瀏覽器輸入http://127.0.0.1:8080,就會調用index接口娄琉,從而加載index.html頁面次乓。
在views.py中添加index接口
from django.shortcuts import render
# Create your views here.
def index(request):
return render(request, 'index.html')
新建相關文件夾
在Demo目錄下,新建templates孽水、static兩個文件夾(文件夾名字千萬不能錯)票腰,templates文件夾中,存放html文件女气;static文件夾存放資源文件杏慰,該文件夾中新建css、img炼鞠、js三個文件夾缘滥,存放對應的資源文件。利用pycharm在templates文件目錄下新建一個index.html的空html文件
index.html body添加
Hello World~ This is my first page.
注意在PyCharm中修改代碼保存后谒主,不用重啟朝扼,PyCharm會自動部署新代碼,非常方便霎肯,直接刷新瀏覽器即可擎颖。
打開瀏覽器,輸入http://127.0.0.1:8000/mainpage
修改位置
默認打開的是根目錄姿现,想要/mainpage訪問到肠仪,需要修改模板的DIRS路徑,從而找到對應的視圖备典。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')], # 修改位置
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
再次打開瀏覽器刷新异旧,成功顯示
設置用自己的iP地址訪問項目
1.首先需要執(zhí)行>python manage.py runserver 0.0.0.0:8000。
2.在setting.py里面需要添加ALLOWED_HOSTS=”*”提佣。
0.0.0.0 讓其它電腦可連接到開發(fā)服務器吮蛹,8000 為端口號荤崇。如果不說明,那么端口號默認為 8000潮针。
查自己IP术荤,直接百度“IP”,即可看到自己的IP