iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 3
0
Modern Web

來個Django Web介面測試吧系列 第 3

來個Django Web介面測試吧:Day03-Django Web開發:接續美麗的錯誤HelloWord

好奇使你成長更多

在學習的過程中,好奇心是最重要的,當有些你有興趣的東西,引發你的好奇心,進而去了解認識,甚至操作,這時候的學習效率是次高的,如果你能夠在產出成鐵人賽文章,或是教導別人,學習效率是最高的(依據學習金字塔理論)


思考&回顧

為什麼透過Day02的指令一步一步,就可以架起這些服務?

  • 黑修斯的反思:感謝前人的辛苦,成果的累積,讓後人可以輕鬆地使用前輩們的成果(僅用少少的指令),站在巨人的肩膀上,使我們看得更遠?!

Day02中有專案、有架起服務,更有美麗的錯誤HelloWord,但是缺少了頁面(index)

接續前面的HelloWord專案,這次要建立首頁(index),了解一些django的基本流程。

  • 前面提到新增sign的應用程式,現在要將加入django的setting.py設置檔中,如此django才認帳提供該服務。
    https://ithelp.ithome.com.tw/upload/images/20190904/20102269dNMmX1ndgN.jpg

  • 預計在http://127.0.0.1:8000/index 看到首頁,輸入此路徑查看,會發現如下圖:

    • 出現page not found(404),但django很貼心說明發生何事:
      https://ithelp.ithome.com.tw/upload/images/20190904/20102269va580gx8Yj.jpg
      • Django 是透過HelloWord.urls定義URLconf(簡單說:沒有在規定的地方新增路徑啦)。
      • 所以目前URL比對index路徑,找不到。
    • 根據Django貼心小管家指示,到urls.py進行設定,抑或是可以到Django官方文件參考。
    1. 先到HelloWord\sign\urls.py路徑下,新增程式碼。(請自己新增urls.py檔案)
      # HelloWord\sign\urls.py 路徑下的程式碼。
      from django.urls import path
      from . import views
      
      urlpatterns = [
          path('', views.index, name='index'),
      ]
      
      https://ithelp.ithome.com.tw/upload/images/20190904/20102269BK8vjNOwll.jpg
    2. 再到HelloWord\sign\view.py路徑下,新增程式碼。
      # HelloWord\sign\view.py 路徑下的程式碼。
      from django.http import HttpResponse
      
      def index(request):
          return HttpResponse("Hello, kitty.")
      
      
      https://ithelp.ithome.com.tw/upload/images/20190904/20102269TXT0eE8dsJ.jpg
    3. 再到HelloWord\urls.py路徑下,新增程式碼。
      https://ithelp.ithome.com.tw/upload/images/20190904/20102269naogOjpMuw.jpg

    上列程式碼新增與修改記得存檔哦,另外請比較url(路徑)與view(視圖的差異)。

    1. 重新啟用服務(指令:python manage.py runserver),通常Django會自動更新。
      • Ctrl+C 可以中止程式
        https://ithelp.ithome.com.tw/upload/images/20190904/20102269IV2dWRp4nS.jpg
    2. hello kitty 你終於出現了,至路徑http://127.0.0.1:8000/index/ 查看。
      https://ithelp.ithome.com.tw/upload/images/20190904/201022696da0nrNpVr.jpg

小結

  1. 編輯不同路徑下的url.py檔案, 建立關於路徑的問題。
  2. 編輯view.py建立關於視圖(或說網頁)的問題。
    上面兩個都是值得思考的問題。

今日的重點是傻呼呼的操作過一次,透過一個問題反思:

我該如何快速理解Django,並實作?


上一篇
來個Django Web介面測試吧:Day02-Django Web開發:先架再說
下一篇
來個Django Web介面測試吧:Day04-Django Web開發:Django的MTV開發模式
系列文
來個Django Web介面測試吧30

尚未有邦友留言

立即登入留言