1. 程式人生 > >django學習記錄1

django學習記錄1

式表 .cn 而不是 obj rate man mode -s 模型

在看django的基礎知識,還是按照以前一樣來總結,還是晚上再統一總結好了,邊看邊總結好像效果不大。      

技術分享圖片

第一部分是生成數據庫,用python manage.migrate命令來生成django的基礎架構數據庫,python manage.py startapp xxx,創建自己的項目然後的話可以定義自己的模型,構建的時候可以自己添加__str__()方法,這樣自己就可以通過字符顯示自己的模型對象,而不是一串對象代碼,模型層還有遷移功能,首先是自己可以去修改自己的模型,然後運行python manage.py makemigrations來創建修改的遷移文件,再運行python manage.py migrate就可以將改變更新到數據庫了。                                                 第二部分是創建管理員賬號,python manage.py createsuperuser,django會自動生成一個管理員界面,啟動服務器進入admin登陸就可以看到了,其中一些具體的細節可以自己設計,然後在admin.py中註冊一些自己想要展示的對象模型,就可以在管理頁面中進行多種操作了。                                                                                                                  第三部分是編寫視圖,在自己的app中的views.py中定義自己想要實現的一些功能,然後在app目錄下的urls.py中實現視圖映射到URL上,然後為了讓主URLconf可以鏈接到polls.url模塊,在主目錄下的urls中插入url(r‘^polls/‘, include(‘polls.urls‘)),這樣就行了,這時候可以定義更多自己需要的試圖,定義之後只要在app目錄下的urls.py中實現視圖到URL的映射。django有一個快捷方式render來定義視圖,render()

函數將請求對象作為它的第一個參數,模板的名字作為它的第二個參數,一個字典作為它可選的第三個參數。 它返回一個HttpResponse對象,含有用給定的context 渲染後的模板。還有快捷方式用於在對象不存在時引發http404,get_object_or_404() 函數將一個Django模型作為它的第一個參數,任意數量的關鍵字參數作為它的第二個參數,它會將這些關鍵字參數傳遞給模型管理器中的get() 函數。如果對象不存在,它就引發一個 Http404異常。我們還可以創建視圖對象使用的模板,在app目錄下創建templates,然後再創建一個app同名目錄,下面再創建對應的html文件作為模板,之所以這樣是為了讓系統容易區分。              第四部分是講改良自己的代碼的,django2.0中reverse()是在django.urls中的,首先是改良URLconf,在app目錄下,將原來的views.index改成views.IndexView.as_view(),其余也是這樣子,然後就可以改良視圖,刪除舊的視圖,使用django的通用視圖來代替。                                 第五部分是測試,主要是針對一些自己設計中問題編寫測試程序,從而發現自己的問題或者確保某一個部分是沒有問題的。測試是一個項目中特別重要的一個部分,由於時間的原因,我可能是要之後再重復研究一下有關於測試這方面的問題。                 第六部分是自己定義自己的外觀,主要講述的是創建一個樣式表文件放在目錄下,不過先要在app目錄下創建一個static目錄,然後創建方式就和模板創建方式一樣,都是為了使得django好區分,編寫完樣式表就可以在模板文件的頂端添加一些引用的內容了。         

{% load staticfiles %}

<link rel="stylesheet" type="text/css" href="{% static ‘polls/style.css‘ %}" />                        

django學習記錄1