摘要:是個(gè)很不錯(cuò)的開(kāi)發(fā)工具,大大縮短了項(xiàng)目的創(chuàng)建時(shí)間以及調(diào)試時(shí)間在使用寫(xiě)腳本一段時(shí)間后,想嘗試使用來(lái)編寫(xiě)一個(gè)項(xiàng)目,現(xiàn)做以下記錄備忘創(chuàng)建項(xiàng)目如果本地沒(méi)有安裝與所選版本對(duì)應(yīng)版本,會(huì)自動(dòng)下載相應(yīng)的版本創(chuàng)建后運(yùn)行項(xiàng)目,默認(rèn)頁(yè)面為,打開(kāi)后出現(xiàn)上面的頁(yè)面,則
pycharm是個(gè)很不錯(cuò)的python開(kāi)發(fā)工具,大大縮短了python項(xiàng)目的創(chuàng)建時(shí)間以及調(diào)試時(shí)間
在使用python寫(xiě)腳本一段時(shí)間后,想嘗試使用Django來(lái)編寫(xiě)一個(gè)python項(xiàng)目,現(xiàn)做以下記錄備忘:
如果本地沒(méi)有安裝與所選python版本對(duì)應(yīng)Django版本,pycharm會(huì)自動(dòng)下載相應(yīng)的版本:
創(chuàng)建后運(yùn)行項(xiàng)目,默認(rèn)頁(yè)面為http://127.0.0.1:8000/,打開(kāi)后:
出現(xiàn)上面的頁(yè)面,則正面項(xiàng)目創(chuàng)建成功
目錄結(jié)構(gòu):
2、創(chuàng)建APP在Django項(xiàng)目中可以包含多個(gè)APP,相當(dāng)于一個(gè)大型項(xiàng)目中的分系統(tǒng)、子模塊、功能部件等,相互之間比較獨(dú)立,但也有聯(lián)系,所有APP共享項(xiàng)目資源
輸入:python manage.py startapp myapp
生成myapp文件夾
myapp/views.py文件代碼:
from django.http import HttpResponse #需要導(dǎo)入HttpResponse模塊 def hello(request): #request參數(shù)必須有,名字類(lèi)似self的默認(rèn)規(guī)則,可以修改,它封裝了用戶(hù)請(qǐng)求的所有內(nèi)容 return HttpResponse("Hello world ! ") #不能直接字符串,必須是由這個(gè)類(lèi)封裝,此為Django規(guī)則
testDjango/urls.py文件代碼:
from myapp import views #首先需要導(dǎo)入對(duì)應(yīng)APP的views urlpatterns = [ url(r"^admin/", admin.site.urls), #admin后臺(tái)路由 url(r"^hello$", views.hello), #你定義的路由,第一個(gè)參數(shù)為引號(hào)中的正則表達(dá)式,第二個(gè)參數(shù)業(yè)務(wù)邏輯函數(shù)(當(dāng)前為views中的hello函數(shù)) ]
運(yùn)行項(xiàng)目:
命令行的方式是:python manage.py runserver 127.0.0.1:8000
但是在pycharm中可以使用如下方法:
修改views文件:
def hello(request): # return HttpResponse("Hello world ! ") context = {} context["hello"] = "Hello World!" #數(shù)據(jù)綁定 return render(request, "hello.html", context) #將綁定的數(shù)據(jù)傳入前臺(tái)
被繼承的模板:
{#base.html#}模板測(cè)試 {{ hello }}
Django模板測(cè)試
{% block mainbody %}original
{% endblock %}
hello.html 中繼承 base.html,并替換特定 block,hello.html 修改后的代碼如下:
{#hello.html#} {% extends "base.html" %} {% block mainbody %}繼承了 base.html 文件
{% endblock %}
重新訪(fǎng)問(wèn)地址 http://127.0.0.1:8000/hello,輸出結(jié)果如下:
5、引入靜態(tài)文件需要將一些靜態(tài)資源引入項(xiàng)目,新建一個(gè)static目錄,可以將js、css等文件放入這個(gè)目錄中:
需要讓Django找到這個(gè)目錄,需要在setting文件中進(jìn)行配置:
在html文件中引入靜態(tài)資源:
{% load staticfiles %} {#base.html#}模板測(cè)試 {{ hello }}
Django模板測(cè)試
{% block mainbody %}original
{% endblock %}
第一行引入靜態(tài)文件路徑{% load staticfiles %},在
...里加入CSS網(wǎng)鏈和js文件文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/40925.html
摘要:坑人的版本的版本問(wèn)題一直是個(gè)廣被吐槽的黑點(diǎn)。這些版本的沖突在開(kāi)發(fā)中十分常見(jiàn),而和的版本差異又加劇了這一問(wèn)題。從而避免與其他版本發(fā)生干擾。 坑人的版本 Python 的版本問(wèn)題一直是個(gè)廣被吐槽的黑點(diǎn)。以至于有人調(diào)侃說(shuō): Python 是世界上最好的兩種語(yǔ)言! 在這里我要說(shuō)明下,對(duì)于初學(xué)者來(lái)說(shuō),版本間的語(yǔ)法差異其實(shí)并不大?,F(xiàn)在剛開(kāi)始學(xué) Python 的人,放心大膽地 用最新版本 即可。業(yè)內(nèi)...
摘要:靜態(tài)資源路徑可以有多個(gè),所以這里使用一個(gè)列表進(jìn)行配置再次進(jìn)入,完美后記現(xiàn)在只涉及到了項(xiàng)目的配置和一些基礎(chǔ)的配置,沒(méi)有涉及到請(qǐng)求從開(kāi)始到完成的任何內(nèi)容。下篇教程將集中進(jìn)行記錄。 前言 推薦使用 virtualenv 創(chuàng)建 python 虛擬環(huán)境,防止因?yàn)槭褂?pip 安裝依賴(lài)到全局引起版本沖突的問(wèn)題,PyCharm 默認(rèn)會(huì)生成一個(gè) venv 目錄并創(chuàng)建虛擬環(huán)境,使用 IDE 自帶的終端...
摘要:最近在研究編程,寫(xiě)了個(gè),試了試,比用流量大了好幾倍,簡(jiǎn)直嚇?biāo)缹殞毩恕5琼?xiàng)目就是跑不起來(lái),一直報(bào)的錯(cuò)誤,說(shuō)是無(wú)此包。 最近在研究socket編程,寫(xiě)了個(gè)echo server,試了試pypy,比用python2.7流量大了好幾倍,簡(jiǎn)直嚇?biāo)缹殞毩?。本地跑網(wǎng)絡(luò)相關(guān)的程序基本沒(méi)有擁塞,所以主要就相當(dāng)于測(cè)試CPU了,感覺(jué)主要是節(jié)省了線(xiàn)程和循環(huán)開(kāi)銷(xiāo),可能是pypy的某種優(yōu)化吧 無(wú)事時(shí)我便自己嘗試...
閱讀 3222·2021-11-23 09:51
閱讀 3686·2021-09-22 15:35
閱讀 3661·2021-09-22 10:02
閱讀 2971·2021-08-30 09:49
閱讀 529·2021-08-05 10:01
閱讀 3397·2019-08-30 15:54
閱讀 1655·2019-08-30 15:53
閱讀 3574·2019-08-29 16:27