Create first App by Django

YOKK m.
4 min readJun 18, 2018

--

Django คือ Python web Framework หรือ พูดง่ายๆก็คือ Framework ที่ใช้ในการพัฒนาWebsite โดยการใช้ภาษาPython

Terminal
Step: Zero — เชคว่ามี Django อยู่แล้วหรือไม่?
python -m django — version
- No module named django : ยังไม่มีdjango

Step: Zero — เชคว่ามี Django อยู่แล้วหรือไม่?: No module named django

0. ก่อนอื่น สร้าง Virtual Environment

เพื่อใช้เป็นประโยชน์ในการสร้าง Projects ในภายภาคหน้าที่มี Environment ต่างกัน โดยใช้คำสั่ง

pip install virtualenv

การสร้าง virtual environment ช่วยในการแยก environment ในแต่ละ project หมายความว่า ในแต่ละ application เราจะเรียกใช้ packages และmodules ต่างๆ ซึ่งในหลายๆครั้ง เราจำเป็นที่จะใช้ specific version of library สมมุติว่า Application A ต้องการใช้ Version 1.0 ของ Module X ในขณะที่ Application B ต้องการใช้ Version2.0 ของ Module X ฉะนั้น หากเราไม่แยก Virtual environment ไม่ Application A ก็ Application B จะไม่สามารถทำงานได้

0. สร้าง Floder สำหรับ Project A

ใช้คำสั่ง mkdir xxx (xxx — ชื่อfloder) ในที่นี้ใช้ชื่อว่า firstcollection

1. Create New Project

1.1 สร้างโปรเจคแรก ตั้งชื่อว่า first project : ใช้ cd เพื่อเข้าไปในfloder firstproject

ในทุกๆProject ประกอบไปด้วย
1.1.1 Virtual Environment : ใช้คำสั่ง virtualenv -p /usr/local/bin/python3 env
virtualenv : called virtualenv
-p : tells virtualenv the path to python version (ในกรณีนี้ใช้ python3)
env : environment name (ใช้อะไรก็ได้)

Automatic generated after using command in 1.1.1 (virtualenv -p /usr/local/bin/python3 env)
  • Activate environment ใช้คำสั่ง source env/bin/activate (จะเห็นว่าเมื่อใช้คำสั่งนี้ ในterminal จะมี (env) ขึ้นข้างหน้า command line
Activate environment
  • Install django ใช้คำสั่ง pip3 install django
    ใช้ pip3 สำหรับ python3 หรือ pip สำหรับpython2
    หากต้องการระบุ versionของ django ให้ใช้ pip3 install django ==ตามด้วยversionที่ต้องการ เช่น pip3 install django == 1.7.11(checkout available version at https://www.djangoproject.com/download/)

1.1.2 Applications : ใช้คำสั่ง django-admin startproject applicationA
django-admin :
Django’s command-line utility for administrative tasks
startproject : Django’s command for start new project
applicationA : Project’s name
**project ต้องอยู่ level เดียวกับenv**

Automatic generated after using command in 1.1.2 (django-admin startproject applicationA)

ApplicationA แรกคือ root directory ซึ่งไม่เกี่ยวอะไรกับDjango; สามารถเปลี่ยนชื่อได้ตามต้องการ ในที่นี้จะเปลี่ยนเป็น root

manage.py คือ Django command-line

  • ใช้คำสั่ง cd เพื่อเข้าไปในroot เพื่อทำการสร้างapplication ชื่อว่า appA และใช้คำสั่ง python manage.py startapp appA (เนื่องจาก Applicationที่เราต้องการสร้างนั้นต้องอยู่level เดียวกับmanage.py)
    python manage.py : Django’s command
    startapp : Django’s command to create app
    appA : Application’s name
Automatic generated after using command in python manage.py startapp appA

2. Write your first views.py

2.1 เปิด appA/views.py ใน editor ใส่ข้อมูลตามนี้ลงไป

from django.http import HttpResponse


def index(request):
ans = “Hello this printed from your views.py in Django’s appA”
return HttpResponse(ans)

2.2 สร้าง file urls.py ใน appA ใส่ข้อมูลตามนี้

from django.urls import pathfrom . import views #called views.py in appAurlpatterns = [
#called def index in appA/views.py
path('', views.index, name='index'),
]

2.3 จากนั้น เปิด floder applicationA เพื่อให้ชี้ไปที่ appA.urls ใส่ข้อมูลตามนี้

from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('appA/', include('appA.urls')),
path('admin/', admin.site.urls),
]

3. Verify if it’s working..

— กลับมาหน้า terminal ใช้คำสั่ง python manage.py runserver

  • หาก มี error ขึ้นตามด้านบนให้ quit server โดยใช้ Control+c ก่อนแล้ว พิมพ์ คำสั่ง ต่อไปนี้ python manage.py migrate แล้วจึงเรียก runserver อีกครั้ง

จากนั้นให้เข้า http://127.0.0.1:8000/appA/

--

--

YOKK m.
YOKK m.

Written by YOKK m.

a data scientist — Master of Data science is the degree, master of none is also me

No responses yet