django下創(chuàng)建多個(gè)app并設(shè)置urls方法
1、創(chuàng)建第二個(gè)app
假設(shè)我們項(xiàng)目P下面已經(jīng)有了一個(gè)默認(rèn)的app,名字是app1。現(xiàn)在我想創(chuàng)建第二個(gè)app,名字時(shí)app2。
進(jìn)入pychram下的Terminal中,運(yùn)行命令:
python manage.py startapp app2
此外,我在每個(gè)app下都建立一個(gè)urls.py,方便區(qū)分。
右擊app名,點(diǎn)擊“new”,選擇“Python File”,命名為urls,確定。
2、設(shè)置url.py
(1)設(shè)置Purls.py
引入app2下的urls,然后添加引導(dǎo)路徑。具體代碼如下:
from app2 import urls as app2_urlsurlpatterns = [ path(’app2/’,include(app2_urls)), # 將所有以app2開頭的urls,都交給app2(app名)下的urls.py處理 ]
(2)設(shè)置app2urls.py
from django.urls import pathfrom app2 import viewsurlpatterns = [ path(’index/’, views.index),]
3、編寫app2下的views.py
from django.shortcuts import render,HttpResponse# Create your views here.# 綁定博客def index(request): return HttpResponse(111)
4、html頁(yè)面如何調(diào)用url
一般在href或者src中調(diào)用一般這樣寫:
href='http://m.lshqa.cn/app2/index/' rel='external nofollow'
這樣就OK了。
內(nèi)容擴(kuò)展:
Django項(xiàng)目下創(chuàng)建多個(gè)app
基于Django2.0版本建立的項(xiàng)目。
之前在項(xiàng)目下建立app都是單個(gè)的,最近由于需求,需要在單個(gè)項(xiàng)目下建立多個(gè)app,最簡(jiǎn)單的方法就是將所有的app都放在與manage.py文件同級(jí)的目錄下,但是這樣的方式會(huì)顯得項(xiàng)目目錄下的文件夾臃腫,對(duì)于強(qiáng)迫癥的而言簡(jiǎn)直是一種折磨。
所以我采取了將多個(gè)app放在同一個(gè)文件夾內(nèi)的方式來(lái)解決這種問(wèn)題。
myDjango ├───.idea │ └───inspectionProfiles ├───Apps │ ├───app01 │ │ ├───migrations │ │ │ └───__pycache__ │ │ └───__pycache__ │ └───app02 │ ├───migrations │ │ └───__pycache__ │ └───__pycache__ ├───myDjango │ └───__pycache__ └───templates ├───app01 └───app02
myDjango是項(xiàng)目名稱,將創(chuàng)建的app放在了Apps文件夾內(nèi)。這樣做使整個(gè)項(xiàng)目的看起來(lái)干凈很多。對(duì)于template也采取了類似的做法,將不同應(yīng)用的template放在不同的目錄下,為了使url盡量看起來(lái)舒服一點(diǎn),在每個(gè)應(yīng)用中添加了一個(gè)urls.py文件,為了在項(xiàng)目的urls.py文件中引用。
放置好之后在myDjango目錄下的setting.py文件進(jìn)行設(shè)置,添加一句
sys.path.insert(0, os.path.join(BASE_DIR, ’Apps’))
做好之后,還需要在myDjango目錄下的urls.py文件添加對(duì)應(yīng)的path
from django.contrib import adminfrom django.urls import path, include urlpatterns = [ path(’admin/’, admin.site.urls), path(’app02/’, include('Apps.app02.urls')), path(’app01’, include('Apps.app01.urls')),]
到這里基本上就可以在一個(gè)項(xiàng)目中設(shè)置多個(gè)app了。
相關(guān)文章:
1. Jsp中request的3個(gè)基礎(chǔ)實(shí)踐2. ASP中解決“對(duì)象關(guān)閉時(shí),不允許操作。”的詭異問(wèn)題……3. ASP常用日期格式化函數(shù) FormatDate()4. HTML5 Canvas繪制圖形從入門到精通5. CSS可以做的幾個(gè)令你嘆為觀止的實(shí)例分享6. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向7. 概述IE和SQL2k開發(fā)一個(gè)XML聊天程序8. html加css樣式實(shí)現(xiàn)js美食項(xiàng)目首頁(yè)示例代碼9. CSS3實(shí)現(xiàn)動(dòng)態(tài)翻牌效果 仿百度貼吧3D翻牌一次動(dòng)畫特效10. CSS Hack大全-教你如何區(qū)分出IE6-IE10、FireFox、Chrome、Opera
