មួយវិញទៀត សំរាប់អ្នកអភិវឌ្ឍកម្មវិធីគេហទំព័រ ទំព័រនិមួយៗមានអាស័យដ្ឋានដោយឡែករៀងៗខ្លួន (URL) ហើយការចុចរបស់អ្នកចូលមើលគេហទំព័រ គឺជា «សំណើរ» (request) ស្នើសុំអោយកម្មវិធីគេហទំព័រ «ឆ្លើយតប» (response) មកវិញដោយបង្ហាញព័ត៌មានរបស់ទំព័រដែលមានអាស័យដ្ឋានដូចដែលអ្នកចូលមើលបានចុច។
សរុបមក «សំណើរ» និង «ការឆ្លើយតប» គឺជាប្រធានបទស្នូលនៃកម្មវិធីគេហទំព័រទាំងឡាយ។ ដូចនេះ គោលបំណងសំខាន់បំផុតនៃកម្មវិធីគេហទំព័រ គឺការដោះស្រាយបញ្ហានៅជុំវិញ «សំណើរ & ការឆ្លើយតប» នេះ។
ដូចបានលើកឡើងរួចមកហើយថា សំរាប់កម្មវិធីគេហទំព័រ នៅពេលដែលអ្នកចូលមើលចុចចង់មើលទំព័រណាមួយ អាស័យដ្ឋាន (URL) របស់ទំព័រនោះត្រូវបានបញ្ជូនទៅកាន់កម្មវិធីគេហទំព័រដើម្បីពិនិត្យនិងធ្វើការឆ្លើយតបដ៏សមស្របណាមួយ។ ហើយជាទូទៅ ការឆ្លើយតបគឺជាការបង្ហាញព័ត៌មានដែលទាក់ទងនិងអាស័យដ្ឋាននោះនៅលើ browser ។ យន្តការពិនិត្យមើលអាស័យដ្ឋានដើំម្បីធ្វើការឆ្លើយតបដ៏សមស្របណាមួយនោះ ត្រូវគេអោយហៅជាភាសាអង់គ្លេសថា «routing» ដែលយើងអាចប្រើពាក្យខ្មែរថា «ការកំណត់ផ្លូវ» សំរាប់បកប្រែពាក្យនេះបាន។
ជាទូទៅ ការឆ្លើយតបទៅនឹងសំណើរណាមួយរបស់អ្នកចូលមើលគេហទំព័រ គឺជាការបង្ហាញព័ត៌មាននៅលើ browser ទាក់ទងនឹងអាស័យដ្ឋានណាមួយដែលជាសំណើររបស់អ្នកចូលមើល។ ហើយយន្តការបង្ហាញព័ត៌មាននៅលើ browser នេះ ត្រូវបានគេកំណត់ឈ្មោះជាភាសាអង់គ្លេសថា «view» ដែលយើងអាចកំណត់យកពាក្យខ្មែរថា «ការបង្ហាញ» សំរាប់បកប្រែពាក្យនេះបានដែរ។
យ៉ាងណាម៉ិញ នៅក្នុងផ្នែកទន់ Django ការបង្កើតកម្មវិធីគេហទំព័រណាមួយ ទាមទារចាំបាច់ត្រូវបង្កើតគំរោងនៃកម្មវិធីនោះជាមុនសិន នៅក្នុងថតណាមួយនៅក្នុងកំព្យូទ័ររបស់យើង។ ជាទូទៅ ថតសំរាប់ដាក់គំរោងនៃកម្មវិធីគេហទំព័រ Django អាចមានឈ្មោះជាអ្វីក៏បានដែរ អាចមានឈ្មោះថាជា django ជាដើម។
បន្ទាប់មកទៀត នៅលើបង្អួចខ្មៅ ដើម្បីបង្កើតគំរោងនៃកម្មវិធីគេហទំព័រ Django យើងចាំបាច់ត្រូវចូលទៅក្នុងថត django នោះ និងសរសេរបញ្ជាដូចខាងក្រោមនេះ៖
django-admin startproject mysite
python manage.py startapp polls
មួយវិញទៀត អាស័យដ្ឋានដែលជាផ្លូវចូលទៅកាន់ទំព័រដើមនៃកម្មវិធីគេហទំព័រ polls របស់យ់ើងគឺ http://localhost:8000/polls/ ដែលជាសំណើរមួយដែលយើងចាំបាច់ត្រូវធ្វើការឆ្លើយតប ដោយការបង្កើតក្បួនខ្នាតទាងឡាយ ក្នុងគោលបំណងបង្ហាញនូវលទ្ធផលផ្សេងៗ ទៅតាមចិត្តចង់របស់យើង។ ជារួមយើងចាំបាច់ត្រូវភ្ជាប់ផ្លូវខាងលើនេះទៅនឹងក្បួនខ្នាតមួយចំនួន នៅក្នុងកម្មវិធី polls របស់យើង ដែលនឹងបង្ហាញនូវលទ្ធផល អាស្រ័យទៅតាមចិត្តរបស់យើង។ ហើយការភ្ជាប់ផ្លូវខាងលើទៅនឹងក្បួនខ្នាតទាំងនោះ ត្រូវធ្វើឡើងនៅក្នុងឯកសារ mystite/urls.py ដូចខាងក្រោមនេះ៖
#mysite/mysite/urls.py from django.contrib import admin from django.urls import include, path urlpatterns = [ path('polls/', include('polls.urls')), path('admin/', admin.site.urls), ]នៅលើបន្ទាត់លេខ 6 ការសរសេរថា path('polls/', include('polls.urls')), គឺជាការភ្ជាប់ផ្លូវដែលជាអាស័យដ្ឋាននៃទំព័រដើមរបស់កម្មវិធីគេហទំព័រ polls ទៅកាន់សាស្ត្រា urls.py នៅក្នុងថត នៃកម្មវិធី polls ។
បន្ទាប់មកទៀត នៅក្នុងថត polls យើងចាំបាច់ត្រូវបង្កើតសាស្ត្រា urls.py ថ្មីមួយ ដែលនៅក្នុងនោះ យើងត្រូវភ្ជាប់ផ្លូវដែលជាទំព័រដើមនេះ ទៅនឹងក្បួនផ្សេងៗនៅក្នុងសាស្ត្រា views.py ដោយធ្វើដូចខាងក្រោមនេះ៖
#mysite/polls/urls.py from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ]នៅលើបន្ទាត់លេខ 7 ការសរសេរថា path('', views.index, name='index') គឺជាការតភ្ចាប់អាស័យដ្ឋានដែលជាផ្លូវចូលទៅកាន់ទំព័រដើមរបស់កម្មវិធី polls ទៅនឹងក្បួនវិធីមួយដែលត្រូវបានបង្កើតឡើងរួចជាស្រេចមានឈ្មោះថា index នៅក្នុងសាស្ត្រា views.py ។ ជាលទ្ធផល ក្បួនឈ្មោះ index នឹងត្រូវយកទៅប្រើជាស្វ័យប្រវត្តិ នៅពេលដែលទំព័រដើមរបស់កម្មវិធី polls ដែលមានអាស័យដ្ឋានជា http://127.0.0.1:8000/polls/ ត្រូវបានបើកឡើង។
មួយវិញទៀត ដោយក្បួនវិធីឈ្មោះ index នៅក្នុងសាស្ត្រា views.py ក៏ជាក្បួនវិធីមួយដូចជាក្បួនវិធីដទៃទៀតនៅក្នុងភាសា Python ដែរ ដូចនេះយើងអាចយកវាមកកែច្នៃអោយបញ្ចេញលទ្ធផលបែបណាក៏បានដែរ។ ពិនិត្យកូដខាងក្រោមនេះ៖
#mysite/polls/views.py from django.shortcuts import render from django.http import HttpResponse def index(request): return HttpResponse("ស្វាគមន៍មកកាន់ទំព័រដើមរបស់កម្មវិធីគេហទំព័រ ស្ទង់មតិ ។")ចុងក្រោយបង្អស់ ដើម្បីដំណើរការកម្មវិធីគេហទំព័រ polls នេះ យើងចាំបាច់ត្រូវដំណើរការ server ដោយសរសេរបញ្ជាមួយបន្ទាត់ដូចខាងក្រោមនេះ៖
python manage.py runserver