【前置課程】使用PyCharm創(chuàng)建你的Django項目
一、緣由
程程(Mr_Cxy)一直在幫忙運營向右奔跑『Python爬蟲小分隊』的學(xué)習(xí)群。在第三期的征集過程當(dāng)中他希望收集這些報名學(xué)員的入學(xué)信息,比如該學(xué)員編程語言的基礎(chǔ)如何、比如學(xué)員目前的職業(yè)是什么,還又如學(xué)員可以接受的每天學(xué)習(xí)時長是多少等等。
原先程程使用了【金數(shù)據(jù)】的平臺(是一款免費的表單設(shè)計和數(shù)據(jù)收集工具,可用來設(shè)計表單,制作在線問卷調(diào)查,組織聚會,詢問意見,整理團隊數(shù)據(jù)資料,獲得產(chǎn)品反饋等),但是畢竟是其他平臺掌控了一手資料和信息,所以使用起來多有不便。為此他找到我,希望我可以做一個自己的web page來幫助他解決這個業(yè)務(wù)難題。
于是我想到了Django。從了解需求到實現(xiàn)我用了大概3~4小時,完成了調(diào)查應(yīng)用的開發(fā)、測試和部署(到阿里云服務(wù)器)
有些學(xué)員驚訝于為何如此之快就能完成這個業(yè)務(wù)的實現(xiàn),除了個人的web開發(fā)經(jīng)驗之外,Django本身的強大也是不可或缺的因素。這個課程的學(xué)習(xí)目標(biāo)就是快速幫助大家完成一個簡單的調(diào)查功能來體驗和入門Web開發(fā)。
從實際出發(fā)、運用所學(xué)解決問題,應(yīng)該成為我們學(xué)習(xí)編程最重要的原因。
二、開始
學(xué)以致用,那么接下來就讓我們來開始動手~
-
【2分鐘】在Pycharm中設(shè)置字體、主題、Keymap
- 主題:File -> Settings -> Appearance -> Theme 可以選擇:Darcula、IntelliJ、Windows
- 字體:File -> Settings -> Editor -> Colors & Fonts 可以設(shè)置字體類型和大小等
- Keymap:File -> Settings -> Keymap -> Keymaps 可以設(shè)置 Eclipse、VS等
講解Pycharm中的其他常用settings(File and Code Templates)
【2分鐘】Project vs. apps
一個Web項目可以理解為Project。比如我們創(chuàng)建的個人網(wǎng)站【mysite】。在一個個人網(wǎng)站當(dāng)中會有各種各樣的功能、模塊、業(yè)務(wù)(諸如此類這樣的叫法)。一個功能就可以是一個app,比如用戶管理(User app)、文章管理(Article app)都是在一個Project當(dāng)中不同的app。Project下面可以有很多apps,apps也可以屬于不同的project。【2分鐘】創(chuàng)建investigate app
在Pycharm當(dāng)中使用manage.py創(chuàng)建一個app【investigate】
python manage.py startapp investigate
講解如何配置apps:在settings.py 的 INSTALL_APP配置中指定
-
【5分鐘】導(dǎo)入靜態(tài)資源(https://docs.djangoproject.com/en/dev/howto/static-files/)
- 操作:
在template目錄中創(chuàng)建 html文件
創(chuàng)建static和css目錄
創(chuàng)建css目錄 - 講解:
django提供【django.contrib.staticfiles】來幫助你管理靜態(tài)文件
靜態(tài)文件包括:images, JavaScript, CSS 等
settings配置:STATIC_URL和STATICFILES_DIRS
- 操作:
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR,"static")
]
-
【5分鐘】設(shè)計訪問Urls并編寫第一個View
是不是一提到WEB開發(fā),總有人會說【路由】?路由到底是什么?
簡單的說,路由是根據(jù)不同的 url 地址展示不同的內(nèi)容或頁面。
在【urls.py】中配置訪問URL,例如:
urlpatterns = [
url(r'^admin/',admin.site.urls),
url(r'^form/$',investigate)
]
講解:
Django中的Urls和View的關(guān)系
Urls中調(diào)用View的方式
render函數(shù)的使用
運行效果圖:
提前展示Django 管理后臺