You are on page 1of 5

პრაქტიკული სამუშაო №3

პროექტის და აპლიკაციის შექმნა Django-ში


➢ პროექტის შექმნა;
➢ აპლიკაციის შექმნა და დაკავშირება პროექტთან;
➢ პროექტის გაშვება.
აპლიკაცია მოვაწყოთ ისე, რომ მომხმარებელს საპასუხოდ გაეგზავნოს სტრიქონი "Hello from
Georgia".
urlpattern ტიპი path (r'^$'), url მისამართთან ფუნქციის დაკავშირება;
HttpResponse მეთოდის საშუალებით ბრაუზერში რაიმე ფრაზის გამოტანა;

თუ უკვე შექმნილი გვაქვს ვირტუალური გარემო შეგვიძლია დავიწყოთ პროექტის შექმნა. თუ არ


გაქვთ შექმნილი, მაშინ უნდა შექმნათ.

Django პროექტის შექმნა (first_project)


1. ვირტუალური გარემოს (gtuenv) აქტივაცია:
gtuenv\Scripts\activate

2. Django პროექტის შექმნა:


django-admin startproject first_project
ჩვენს საქაღლდეში შეიქმნება ქვეკატალოგი first_project

-
3. გავუშვათ პროექტი შესრულებაზე. გავითვალისწინოთ, რომ უნდა ვიმყოფებოდეთ ახლად შექმნილ
პროექტის დირექტორიაში.
python manage.py runserver

ამის შემდეგ ბრაუზერში შევიტანოთ http://127.0.0.1:8000 და მივიღებთ შემდეგი სახის გვერდს:

ეკატერინე ბოჭორიძე | Django 1


შევქმნათ პირველი აპლიკაცია (hello)
1. თავდაპირველად გააქტიურებული უნდა გვქონდეს შექმნილი ვირტუალური გარემო (gtuenv)
სტრიქონში/ტერმინალში
gtuenv\Scripts\activate
cd first_project

შევქმნათ აპლიკაცია სახელით hello


(gtuenv) D:\b_e\first_project> python manage.py startapp hello

- ; -
შეიქმნება hello აპლიკაცია (first_project\ hello).

2. აუცილებელია, რომ შექმნილი აპლიკაცია დარეგისტრირდეს Django პროექტში, ამისათვის უნდა


გავხსნათ settings.py ფაილი და დავამატოთ INSTALLED_APPS მასივის ბოლოში აპლიკაცია: 'hello',
(C:\first_project \first_project\settings.py)

გავუშვათ სერვერი
python manage.py runserver
ისევ გადავიდეთ ბრაუზერში მისამართით http://127.0.0.1:8000/, ის მუშაობს.

უკვე შექმნილი გვაქვს აპლიაკცია, ჩავამატოთ ბრძანებები, რომ ეს აპლიკაცია ასრულებდეს


მოსალმებას.

შევქმნათ ისეთი აპლიკაცია, რომელიც მოგვესალმება მხოლოდ: "Hello from Georgia"

ეკატერინე ბოჭორიძე | Django 2


I ვარიანტი ("Hello from Georgia" სახის აპლიკაციია შექმნა)
➢ შევიდეთ პროქტში hello აპლიკაციის views.py ფაილში და არსებული კოდი შევცვალოთ
შემდეგით:
# first_project\hello\views.py
from django.shortcuts import render
# Create your views here.
from django.http import HttpResponse
def home(request):
return HttpResponse("Hello from Georgia!")

➢ ახლა პროექტში გავხსნათ urls.py ფაილი და შევცვალოთ არსებული კოდი შემდეგი


შემცველობით:
# first_project\urls.py
from django.contrib import admin
from django.urls import path
from hello import views

urlpatterns = [
path('admin/', admin.site.urls),
path('', views.home, name='home'),
]
გავუშვათ აპლიკაცია ისევ ბრძანებით python manage.py runserver
➢ ისევ გავუშვათ აპლიკაცია ბრძანებით:
(gtuenv) c:\first_project> python manage.py runserver
გადავიდეთ ბრაუზერში მისამართით http://127.0.0.1:8000/, ბრაუზერი ასახავს სტრიქონს " Hello
from Georgia!".
შეგვიძლია შევიტანოთ ცვლილებები:
return HttpResponse("<h1>Hello from Georgia!</h1> <p>გამარჯობა! </p>")
უკვე გვაქვს პროექტი (first_project) მასში შექმნილი აპლიკაციით (hello).

შეიტანეთ ცვლილებები ისე, რომ მიიღოთ შემდეგი სურათის მსგავსი:

return HttpResponse("<h1>Hello from Georgia!</h1><p>გამარჯობა! </p> <font color=red size=12>საქართველოს


ტექნიკური უნივერსიტეტი</font>")

ეკატერინე ბოჭორიძე | Django 3


II ვარიანტი ("Hello from Georgia" სახის აპლიკაციია შექმნა)
(ამგვარად ვიმუშავებთ შექმნილ აპლიკაციებთან ხშირად)
მაშ ასე, პროექტში (first_project) კიდევ შევქმნათ ახლი აპლიკაცია (app_one). ამისათვის
შევასრულოთ ბრძანებათა სტრიქონში/ტერმინალში შემდეგი ბრძანება:
python manage.py startapp app_one

; - ;
settings.py ფაილის და INSTALLED_APPS მასივის ბოლოში ჩავამატოთ აპლიკაცია: 'app_one',

ვცადოთ პროექტის შესრულებაზე გაშვება: (gtuenv) c:\first_project > python manage.py runserver
გადავიდეთ ბრაუზერში და გადავიდეთ ლოკალ ჰოსტზე: http://127.0.0.1:8000 და დავრწმუნდეთ, რომ
ყველაფერი კარგად მუშობს:

app_one საქაღალდეში უნდა შევქმნათ ახალი urls.py ფაილი:


from django.urls import path
from.import views
urlpatterns = [
path('', views.show),
]
**** (აქ გამოვიყენეთ show, შესაძლებელია დავარქვათ სხვა სახელიც)
თუმცა ჯერჯერობით არ გაგვაჩნია მეთოდი show. ამისათვის, გადავიდეთ app_one\view.py ფაილში
და დავწეროთ ეს მეთოდი. ფაილი ნაგულისხმევად გამოიყურება შემდეგნაირად:

შევცვალოთ კოდი შემდეგი სახით:


# app_one\view.py
from django.shortcuts import render
from django.http import HttpResponse
def show(request):
return HttpResponse("გამარჯობა საქართველო!")

ეკატერინე ბოჭორიძე | Django 4


მოცემულ შემთხვევაში ვახდენთ HttpResponse კლასის იმპორტს django.http სტანდარტული
პაკეტიდან. შემდეგ განისაზღვრება ფუნქცია show(), რომელიც პარამეტრის სახით იღებს request
მოთხოვნის ობიექტს.
HttpResponse კლასის დანიშნულებაა პასუხის შექმნა, რომელიც ეგზავნება მომხმარებელს.
Return HttpResponse("გამარჯობა საქართველო!") გამოსახულების საშუალებით ჩვენ ვუგზავნით
მომხმარებელს სტრიქონს "გამარჯობა საქართველო!"

იმისათვის, რომ url-ები ჩანდეს პროექტში, ისინი აუცილებლად უნდა დავაკავშიროთ.


➢ Django პროექტში გავხსნათ urls.py ფაილი. დავამატოთ იმპორტში include
# first_project/urls.py
from django.contrib import admin
from django.urls import path, include
from hello import views
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.home, name='home'),
path('app/', include('app_one.urls')),]
ამ დროს თუ შევამოწმებთ სერვერს, ის მუშობს.
python manage.py runserver
შეგვიძლია შევიტანოთ ცვლილებები: http://127.0.0.1:8000/app

დავალება 1
➢ შექმენით პროექტი (თქვენი გვარის). მასში მოათვსეთ აპლიკაცია (stu_name), რომელიც ბრაუზერში
გამოიტანს (http://127.0.0.1:8000) შეტყობინებას:

➢ პროექტში შექმენით მეორე აპლიკაციაც (stu_name2). http://127.0.0.1:8000/stu/ მისამართზე


გამოიტანს რაიმე შეტყობინებას (განიხილეთ ორივე ვარიანტით, აპლიკაციას ჰქონდეს საკუთარი
urls.py).
http://127.0.0.1:8000 http://127.0.0.1:8000/stu/

საქართველოს ტექნიკური უნივერსიტეტი


ინფორმატიკისა და მართვის სისტემების ფაკულტეტი
Georgian Technical University
I’m from Georgia
Welcome

return HttpResponse("<h1>საქართველოს ტექნიკური უნივერსიტეტი</h1><font color=red size=4><br>ინფორმატიკისა


და მართვის სისტემების ფაკულტეტი</font><p>გამარჯობა! </p> ")

ეკატერინე ბოჭორიძე | Django 5

You might also like