Python Django-да қосымшаларды әзірлеу



Жұмыс түрі:  Курстық жұмыс
Тегін:  Антиплагиат
Көлемі: 24 бет
Таңдаулыға:   
Қазақстан Республикасы Ауыл шаруашылығы министрлігі
С.Сейфуллин атындағы қазақ агротехникалық университеті
Ақпараттық жүйелер кафедрасы

КУРСТЫҚ ЖҰМЫС

6В061 - АКТ даярлау бағыты бойынша
Бағдарламалық инженерияКомпьютерлік инженерия
білім бер бағдарламасы

Тақырыбы: Python Django-да қосымшаларды әзірлеу
Пәні: Алгоритмдер, мәліметтер құрылымы және бағдарламалау

Орындаған: БИ 20-04 топ студенті
Абитбек Томирис

Тексерген: Мустафаева Н.Т

Курстық жұмыс қорғауға жіберілді
________________________________
(оқытушы қолы)

Нұр-Сұлтан 2022

Мазмұны

Кіріспе
1 Python және оның фреймворкы Django-ның архитектурасы
1.1 Python бағдарламалау тілінің сипаттамасы
1.2 Django ерекшеліктері
1.3 Django қосымшасы құрылымы
2 Клиент-серверлік қосымшаны әзірлеу
2.1 жұмысқа дайындық
2.2 жұмысқа кірісеміз
2.3 urls.py орнату
2.4 модельдерді құру
2.5 көріністер мен шаблондар жасау
2.6 тестілеу
Қорытынды
Пайдаланылған әдебиеттер тізімі

КІРІСПЕ

Қазіргі уақытта Python жоғары деңгейлі бағдарламалау тілі, әсіресе оның Django фреймворк қосымшаларды әзірлеу кезінде өте өзекті болып табылады. Кітапханалардың, құралдардың, шаблондардың үлкен жиынтығы, кодтың ықшамдығы және құрылымдылығы - бұл бағдарламалау тілінің танымалдығының себебі.
Курстық жұмыстың мақсаты - Python Django тілінде клиент-сервер қосымшасын құру.
Тапсырмалар тізімі мыналарды қамтиды:
1) Python қосымшасының тарихы мен архитектурасын және оның Django фремворкын зерттеу.
2) Django фреймворкін пайдалана отырып клиент-сервер қосымшасын жасау.
Курстық жұмыс екі тараудан, кіріспеден, қорытындыдан және пайдаланылған ақпараттар тізімінен тұрады
Бірінші тарауда Python және оның Django құрылымының архитектурасы мен тарихы егжей-тегжейлі сипатталады.
Екінші тарауда "трейдердің мәмілелер журналы" қосымшасын кезең-кезеңімен жасау сипатталған.
Қорытындыда курстық жұмыстың негізгі көздері келтірілген.

1 Python және оның фреймворкы Django-ның тарихы мен архитектурасы
1.1 Python бағдарламалау тілінің сипаттамасы
Python - көптеген пайдалы функцияларды қамтитын және бірнеше бағдарламалау парадигмаларын қолдайтын үлкен стандартты кітапханасы бар жоғары деңгейлі, жалпы мақсаттағы бағдарламалау тілі.
Python әзірлеушілері Тим Питерс жасаған белгілі бір философияны ұстанады. Оның мазмұнын аудармашыны іске қосу және оған import this пәрменін енгізу арқылы оңай көруге болады:

1-сурет - this модулін шақыру
Enter пернесін басу арқылы біз келесі нәтижені аламыз:

2-сурет - Python тілінің философиясы
Бір сөзбен айтқанда, әзірлеушілер айқындықты және қарапайымдылықты жақтайды.
Сондай-ақ, бұл философия көптеген маңызды ережелерді қамтиды, мысалы:
Қателерді ешқашан жасырмау керек
1.2 Django ерекшеліктері
Django жаңалықтар ортасында дүниеге келгендіктен, ол дерекқордан динамикалық ақпаратты ұсынатын мазмұнға бағытталған сайттар үшін өте қолайлы кейбір құралдарды (мысалы, әкімшілік интерфейсті) қамтамасыз етеді.
Django және оның шығу тегі оның ашық бастапқы қауымдастығының мәдениетін қалыптастырды. Django академиялық әзірлеме немесе коммерциялық өнім емес, нақты кодтан алынғандықтан, ол толығымен оның авторлары тап болған және әлі де бетпе-бет келген даму мәселелерін шешуге бағытталған. Нәтижесінде Django үнемі жетілдірілуде. Фреймворктің негізін қалаушылары Django-ның уақытты үнемдеуіне, техникалық қызмет көрсету оңай және жүктеме кезінде жақсы жұмыс істейтін қолданбаларды құруын көздейді. Басқа себепсіз әзірлеушілер өз уақыттарын үнемдеуге және жұмысынан ләззат алуға өздерінің эгоисттік қалауларымен итермелейді.
Djangoның ерекше белгілері:
1) кез келген сұрау бағдарламалық түрде өңделеді және оның мекенжайына (url) қайта бағытталады;
2) шаблондар арқылы мазмұнды және презентацияны бөлу;
3) төмен деңгейлі мәліметтер қорынан абстракциялау.

1.3 Django қосымшасы құрылымы
Django қолданбасында төрт негізгі компонент бар.
1) Деректер моделі: Деректер кез келген заманауи веб-қосымшаның өзегі болып табылады. Модель қолданбаның ең маңызды бөлігі болып табылады, ол кез келген сеанстан кез келген сұрау үшін деректерге үнемі қол жеткізеді. Кез келген модель стандартты Python класы болып табылады. Объектіге бағытталған салыстырушы (ORM) мұндай сыныптарды дерекқорларға тікелей қатынасуды қамтамасыз етеді. Егер ORM болмаса, бағдарламашы сұрауларды тікелей SQL тілінде жазуы керек еді. Модель деректер деңгейіне қол жеткізудің жеңіл механизмін қамтамасыз етеді және бизнес логикасын инкапсуляциялайды. Модель белгілі бір қолданбадан тәуелсіз. Деректерді тіпті пәрмен жолынан веб-серверді пайдаланбай өңдеуге болады.
2) Көрініс (көрініс): Джангодағы көріністер әр түрлі функцияларды орындайды, соның ішінде пайдаланушы сұрауларын басқару, оның рөліне байланысты мәтінмән беру. Көрініс - кейбір мекенжайға (url) сұрауға жауап ретінде шақырылатын және контекстті қайтаратын қалыпты функция.
3) Үлгілер: олар мәліметтерді ұсыну формасы. Үлгілердің өздерінің қарапайым метатілі бар және негізгі көрсету құралдарының бірі болып табылады.
4) URL: бұл көріністерге (көрініске) сыртқы қол жеткізу механизмі ғана. url ішіне енгізілген тұрақты өрнектер механизмді айтарлықтай икемді етеді. Бұл жағдайда бір көріністі әртүрлі қолданбаларға қол жеткізуді қамтамасыз ететін бірнеше URL мекенжайларына конфигурациялауға болады. Бетбелгілердің философиясы мұнда қолдау көрсетеді: URL мекенжайлары өзін-өзі қамтамасыз етеді және көрсетілімге тәуелсіз өмір сүре бастайды.
Django Python жасайтын барлық нәрсені қолдайды: оның барлық стандартты Python кітапханаларына және т.б., сонымен қатар Django-ның кірістірілген функционалдық мүмкіндіктері бар.
2 Клиент-сервер қосымшасын жасау

2.1 Жұмысқа дайындық

Python туралы білімімізді тәжірибе түрінде қолданудың уақыты келді!
Біз трейдер үшін сауда журналын жасаймыз. Алдымен пәрмен жолын ашайық, өйткені ол арқылы Django-дағы барлық командаларды орындауға тура келеді.

сурет - Пәрмен жолы

Жобамыз сақталатын қалтаны ашайық. Мұнда әр жоба негізінде PythonDjango тәуелділіктерін оқшаулауға мүмкіндік беретін myvenv бұрын жасалған. Бұл бір сайтқа енгізілген өзгерістер біз әзірлейтін басқа сайттарға ешқашан әсер етпейтінін білдіреді.

сурет - Жоба файлдары бар қалталар
Енді пәрмен жолын пайдаланып myvenvScripts қалтасына өтіп, белсендіру файлын орындаймыз - осылайша виртуалды ортаны ағымдағы сеансқа қосамыз.

сурет - Виртуалды ортаға ауысу

Көріп отырғанымыздай, пәрмен жолында жол адресінен бұрын жақшаға алынған виртуалды ортаның атауы пайда болды. Бұл қосылым сәтті болғанын білдіреді.
Физикалық тұрғыдан виртуалды орта файлдары бар басқа қалталарды қамтитын қалта болып табылады.

сурет - Виртуалды ортаның мазмұны

Содан кейін келесі пәрмен арқылы жобамызды жасаймыз

сурет - Жобаны құру
Жоба journal_proj деп аталады. Міне, оның мазмұны:

сурет - Жасалған жоба
Қалта мазмұны:

сурет - jornal_proj мазмұны

Параметрлер файлында жоба параметрлері бар. Олардың өзгертулері онда жасалған барлық қолданбаларға әсер етеді. Егер біз оны ашсақ, біз мынаны көреміз:

сурет - Жоба параметрлері

Көріп отырғанымыздай, мұнда көптеген параметрлер бар, бірақ бізге кейбіреулері ғана қажет. TIME_ZONE жолында 'EuropeMoscow' арқылы дұрыс уақыт белдеуін орнатыңыз, сонымен қатар LANGUAGE_CODE жолында тілді орыс тіліне өзгертіңіз. Бұл барлық Django хабарландырулары орыс тілінде көрсетілуі үшін қажет.

сурет - Жоба параметрлерін өзгерту

Келесі терезеде дерекқор конфигурацияланады. Әдепкі бойынша стандарт таңдалады - sqlite3

сурет - Мәліметтер базасын орнату

Енді серверді іске қосып, Django дұрыс жұмыс істеп тұрғанын көрейік. Бұл python manage.py runserver пәрменімен орындалады.

сурет - Серверді іске қосу

Пәрмен жолының жауабы қателер жоқ екенін және біз серверге баруға болатынын айтады http:127.0.0.1:8000
Мұны браузер жолына мекенжайды енгізу арқылы жасаймыз

сурет - Сервер мекенжайына өту
Ауыстыруды аяқтағаннан кейін біз келесі бетті аламыз:

сурет - Серверге өту нәтижесі

Барлығы жақсы өтті. Айта кететін нәрсе , бұл бет орыс тілінде, себебі біз параметрлерде сәйкес параметрді көрсеттік.
2.2 Жұмысты бастау
Журнал атты қосымшаны құрайық.

-сурет - Қосымшаны құру
Жоба қалтасының жанында қолданбаның аты бар қалта пайда болды

сурет - құрылған қосымша

Ол келесі файлдарды қамтиды:

сурет - Қолданбаның мазмұны

Models.py - деректер үлгілерін жасау үшін қажет
Admin.py - басқару параметрлерін тағайындау үшін
Views.py - көріністер. Бұл файл url сұрауына жауап ретінде шақырылады.
Біздің жоба үшін мәліметтер базасын жасау уақыты келді. Біз мұны PostgreSQL-де жасаймыз. Ол үшін PgAdmin 4 ашыңыз.

Сурет - Мәліметтер қорын пайдаланушылар
Алдымен admin1 деп атайтын және сол құпия сөзді орнататын суперпайдаланушыны жасайық.

сурет - Суперпайдаланушыны құру

Оған барлық құқықтарды берейік.

-сурет - Құқықтарды орнату
Енді мәліметтер базасын жасайық, оны jour_db деп атаймыз және иесі ретінде жасаған admin1 суперпайдаланушысын көрсетеміз.

сурет - Мәліметтер қорын құру
Енді жоба параметрлеріне оралайық және сол жерде біздің дерекқорды көрсетейік және суперпайдаланушы үшін деректерді көрсетейік.

сурет - Жоба параметрлеріне дерекқорды қосу

2.3 urls.py теңшеу
Енді жоба қалтасына өтіп, urls.py файлын ашайық

сурет - urls.py файлы

Біздің есімізде, URL мекенжайлары көріністерге қол жеткізу механизмі болып табылады. URL үлгілері тізімі мекенжай үлгілерін қамтиды және басқа URL файлына қайта бағыттайды немесе олардың сәйкес көріністерін көрсетеді.
Сұраулар жобаның url файлы арқылы өтетіндіктен, біз оны қолданбамыздың url файлына сілтеме жасауымыз керек. Ол үшін біз қосу функциясын импорттаймыз, ол бізге мұны істеуге мүмкіндік береді және тізімге қажетті кодты жазады.

сурет - Құрылған қолданбаның URL мекенжайларын қосу
Django URL мекенжайлары мен көріністерге сәйкес келеді. URL мекенжайы тырнақшалармен бөлінген тұрақты өрнектер арқылы жазылады. Егер оларда ештеңе болмаса, онда мекен-жай қабылданадыhttp:127.0.0.1:8000.


сурет - Қолданбаның адрестері бар файлды құру
2.4 Модельдерді құру
Енді деректер базасында модельдер - кестелер жасайық.
Ол үшін models.py файлын ашып, сол жерге келесі мәтінді қосыңыз:

сурет - Модельдер
Осылайша, бізде деректер базасында тек 3 кесте болады.
Біріншісі пайдаланушылар деп аталады - логиндер мен құпия сөздерді сақтайтын пайдаланушылар тізімі. CharField түрі мәтіндік мәндер болып табылады. Максималды ұзындық - 200 таңба.
Екіншісі - сауда - ашық сауда-саттық тізімі. Шетелдік кілт болып табылатын авторизацияланған пайдаланушының нөмірін қамтиды. Пайдаланушы жүйеден жойылғанда, онымен байланысты барлық ашық мәмілелер жойылады (on_delete = models.CASCADE параметріне байланысты). Сондай-ақ, бұл кестеде акцияның атауы, мәміле ашылған баға, акциялар саны және уақыты көрсетілген күні болады.
Үшіншісі - trade_close - жабық сауда-саттық тізімі. Онда шетелдік кілт ретінде ашық мәміленің нөмірі, жабылу бағасы, акциялар саны және уақытпен күні көрсетіледі.
Бір кестенің орнына екі кесте құру қажеттілігі транзакцияларды уақыт өте келе ішінара жабуға болатындығына байланысты туындады. Немесе ұзақ уақыт бойы мүлдем жабылмайды.
Содан кейін дерекқорға өзгертулер тізімін орындау үшін Python manage.py makemigrations journal пәрменін пайдаланыңыз, содан кейін кестелерді дерекқорға жазу үшін тасымалдау пәрменін пайдаланыңыз.

2.5 Көріністер мен үлгілерді құру
Көріністі жасамас бұрын шаблондық файлдарды - клиент жағын жасайық. Барлығы 5 болады.
Біз мұны html-де жасаймыз.
Олар осылай көрінеді

сурет - HTML шаблондары

Бізде ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Пайдаланушы интерфейсі компоненттері
Қол жеткізуді басқару жүйесін жобалау
Қала аралық тасымалдау
Қазақша ымдау тілінің лексикалық ерекшеліктері
Теңдеудің сандық шешімі
Автобусты спутниктік мониторинг арқылы бақылау
Канал арқылы таралатын жалғыз толқын және оның параметрлері
Python тілі жайында
АҚПАРАТТЫҚ ЖҮЙЕНІ ӘЗІРЛЕУ
Phyton бағдарламалау тілінде файлдармен жұмыс
Пәндер