Django Unleashed Framework
Open in Telegram
ΠΡΡΡΠΈΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½Π° ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ΅ Django Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΠΈ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Π Π°Π·ΠΌΠ΅ΡΡΠΈΡΡ ΡΠ΅ΠΊΠ»Π°ΠΌΡ: @tproger_sales_bot ΠΡΠ°Π²ΠΈΠ»Π° ΠΎΠ±ΡΠ΅Π½ΠΈΡ: https://tprg.ru/rules ΠΡΡΠ³ΠΈΠ΅ ΠΊΠ°Π½Π°Π»Ρ: @tproger_channels ΠΡΡΠ³ΠΈΠ΅ Π½Π°ΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ: https://tprg.ru/media
Show more1 294
Subscribers
No data24 hours
-27 days
-1630 days
Data loading in progress...
Similar Channels
Tags Cloud
Incoming and Outgoing Mentions
---
---
---
---
---
---
Attracting Subscribers
September '26
September '26
+4
in 0 channels
August '26
+4
in 0 channels
Get PRO
July '26
+9
in 0 channels
Get PRO
June '26
+4
in 0 channels
Get PRO
May '26
+2
in 0 channels
Get PRO
April '26
+10
in 0 channels
Get PRO
March '26
+8
in 1 channels
Get PRO
February '26
+8
in 0 channels
Get PRO
January '26
+10
in 0 channels
Get PRO
December '25
+5
in 0 channels
Get PRO
November '25
+15
in 0 channels
Get PRO
October '25
+20
in 0 channels
Get PRO
September '25
+15
in 0 channels
Get PRO
August '25
+14
in 0 channels
Get PRO
July '25
+7
in 0 channels
Get PRO
June '25
+10
in 0 channels
Get PRO
May '25
+19
in 0 channels
Get PRO
April '25
+23
in 0 channels
Get PRO
March '25
+43
in 0 channels
Get PRO
February '25
+21
in 1 channels
Get PRO
January '25
+22
in 1 channels
Get PRO
December '24
+28
in 1 channels
Get PRO
November '24
+17
in 1 channels
Get PRO
October '24
+18
in 1 channels
Get PRO
September '24
+18
in 0 channels
Get PRO
August '24
+26
in 0 channels
Get PRO
July '24
+29
in 0 channels
Get PRO
June '24
+29
in 1 channels
Get PRO
May '24
+27
in 0 channels
Get PRO
April '24
+32
in 1 channels
Get PRO
March '24
+33
in 1 channels
Get PRO
February '24
+36
in 1 channels
Get PRO
January '24
+39
in 1 channels
Get PRO
December '23
+25
in 0 channels
Get PRO
November '23
+23
in 0 channels
Get PRO
October '23
+18
in 0 channels
Get PRO
September '23
+34
in 0 channels
Get PRO
August '23
+48
in 0 channels
Get PRO
July '23
+37
in 0 channels
Get PRO
June '23
+28
in 0 channels
Get PRO
May '23
+38
in 0 channels
Get PRO
April '23
+63
in 0 channels
Get PRO
March '23
+47
in 0 channels
Get PRO
February '23
+42
in 0 channels
Get PRO
January '23
+56
in 0 channels
Get PRO
December '22
+71
in 0 channels
Get PRO
November '22
+65
in 0 channels
Get PRO
October '22
+74
in 0 channels
Get PRO
September '22
+61
in 0 channels
Get PRO
August '22
+89
in 0 channels
Get PRO
July '22
+205
in 0 channels
Get PRO
June '22
+88
in 0 channels
Get PRO
May '22
+104
in 0 channels
Get PRO
April '22
+121
in 0 channels
Get PRO
March '22
+1 635
in 0 channels
| Date | Subscriber Growth | Mentions | Channels | |
| 05 September | +1 | |||
| 04 September | 0 | |||
| 03 September | +1 | |||
| 02 September | +2 | |||
| 01 September | 0 |
Channel Posts
16 ΠΈΡΠ»Ρ Π²ΡΡΡΠ΅ΡΠ°Π΅ΠΌΡΡ Ρ JSβΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ SberProfi Π² Π‘Π±Π΅Ρ.Π‘ΡΠ΅Π΄Π΅
β‘οΈ AI ΡΠΆΠ΅ ΠΌΠ΅Π½ΡΠ΅Ρ JavaScriptβΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ. ΠΠΎΠΏΡΠΎΡ Π½Π΅ Π² ΡΠΎΠΌ, Π·Π°ΠΌΠ΅Π½ΠΈΡ Π»ΠΈ ΠΎΠ½ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠ², Π° Π² ΡΠΎΠΌ, ΠΊΡΠΎ ΠΎΡΠ²ΠΎΠΈΡ Π΅Π³ΠΎ Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½Π΅Π΅.
ΠΠ±ΡΡΠ΄ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΡΡ
ΠΊΠ΅ΠΉΡΠ°Ρ
ΠΎΡ Π‘Π±Π΅ΡΠ°, Cloudβ€ru ΠΈ Mish. ΠΡΠ½ΡΠ΅ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΈ ΡΠ²ΠΈΠ΄ΡΡ ΡΠΏΠ΅ΡΡΠΎΡΠΌΠ°Ρ ΠΎΡ Π±Π»ΠΎΠ³Π΅ΡΠΎΠ² ΠΈ ΠΏΠΎΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΡΠΊΡΠΏΠ΅ΡΡΠ°ΠΌΠΈ GigaCode ΠΈ GitVerse.
π ΠΠ°ΡΠ°Π»ΠΎ Π² 17:00, Π²ΡΡΡΠ΅ΡΠ° ΠΎΡΠ½ΡΡ
Π³ΠΎΡΡΠ΅ΠΉ - Π² 16:00.
ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΡΠ½ΡΡ
ΠΌΠ΅ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ β ΡΡΠΏΠ΅ΠΉΡΠ΅ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ!
| 2 | Tproger ΠΈ Π―Π½Π΄Π΅ΠΊΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΊΠΎΡΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠ²Π΅ΡΡ ΠΏΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° β ΠΎΡΠ΄Π΅Π»ΡΠ½Π°Ρ ΠΏΠ»Π°Π½Π΅ΡΠ° Π² ΡΠΎΠ»Π½Π΅ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅. ΠΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ β Π²ΠΎΠΏΡΠΎΡΡ ΠΏΡΠΎ ΠΊΠΎΡΠΌΠΎΡ ΠΈ ΠΈΡΡΠΎΡΠΈΡ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.
ΠΡΠΎΠΉΠ΄ΡΡΠ΅ Π²ΡΠ΅ ΡΡΠ°ΠΏΡ β ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΠΎΠ·ΡΠ³ΡΡΡΠ΅ ΡΠ΅Π»Π΅ΡΠΊΠΎΠΏΠ° ΠΈ Π΄ΡΡΠ³ΠΈΡ
ΠΏΡΠΈΠ·ΠΎΠ².
ΠΠ°ΡΠ°ΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ Π·Π΄Π΅ΡΡ: https://tprg.ru/zldM | 221 |
| 3 | Django ΠΏΠΎΠ»ΡΡΠΈΠ» Π½ΠΎΠ²ΡΠΉ REST-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ: Π±ΡΡΡΡΠ΅Π΅, ΡΡΡΠΎΠΆΠ΅ ΠΈ Π±Π΅Π· ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΊ ΠΌΠΎΠ΄Π΅Π»ΡΠΌ
ΠΠ»Ρ Django Π΄ΠΎΠ»Π³ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π±ΡΠ»ΠΎ Π΄Π²Π° ΠΎΡΠ½ΠΎΠ²Π½ΡΡ
ΠΏΡΡΠΈ: DRF Ρ Π΅Π³ΠΎ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ°ΠΌΠΈ, ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π½ΡΠΌΠΈ ΠΊ ΠΌΠΎΠ΄Π΅Π»ΡΠΌ, ΠΈ django-ninja, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΡΠ°Π»ΡΡ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ FastAPI, Π½ΠΎ Π² ΠΈΡΠΎΠ³Π΅ ΠΏΡΠΈΠ½ΡΡ ΡΠ²ΠΎΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ. ΠΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ
Π½Π΅ Π΄Π°Π²Π°Π» ΠΏΠΎΠ»Π½ΠΎΠΉ ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΠΈ, Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ Π² Π²ΡΠ±ΠΎΡΠ΅ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ
ΠΈ Π²Π½ΡΡΠ½ΠΎΠΉ OpenAPI-ΡΠΏΠ΅ΠΊΠΈ ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ.
ΠΠΎΠ²ΡΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ core-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ CPython, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ. ΠΠ³ΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ:
β ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ FastAPI (Π²ΡΠ΅Π³ΠΎ Π½Π° 30% ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ Π±Π΅Π· ΡΡΡΡΠ° ΠΠ);
β ΠΏΠΎΠ»Π½Π°Ρ ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΡ, Π½ΠΎ Π±Π΅Π· Π½Π°Π²ΡΠ·ΡΠ²Π°Π½ΠΈΡ;
β ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π»ΡΠ±ΡΡ
ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ: pydantic, msgspec, dataclasses, TypedDict ΠΈ Π΄Π°ΠΆΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ
ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠ²;
β ΡΡΡΠΎΠ³Π°Ρ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡ ΠΎΡΠ²Π΅ΡΠΎΠ² Π² dev-ΡΠ΅ΠΆΠΈΠΌΠ΅ β OpenAPI-ΡΠΏΠ΅ΠΊΠ° Π²ΡΠ΅Π³Π΄Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎΡΡΠΈ;
β Π½Π°ΡΠΈΠ²Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ sync ΠΈ async;
β ΡΡΡΠΈΠΌΠΈΠ½Π³ (SSE, JsonLines) Π½Π° ASGI;
β ΡΠ°ΡΡΠΈΡΡΠ΅ΠΌΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ-ΠΊΠ»Π°ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΡΠ»Π΅Π΄ΡΡΡ ΠΎΠ±ΡΡΠ½ΡΠ΅ Django View.
ΠΡΠΎΠ΅ΠΊΡ ΡΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ (polyfactory, schemathesis, tracecov) ΠΈ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ AI-first: Π΅ΡΡΡ ΡΠΊΠΈΠ»Ρ Π΄Π»Ρ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Ρ django-ninja, llms-full.txt ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ Π°Π³Π΅Π½ΡΠ°ΠΌΠΈ.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ, ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π° ΠΈ ΡΠΈΠ»ΠΎΡΠΎΡΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² ΡΡΠ°ΡΡΠ΅: https://habr.com/ru/articles/1017036/ | 3 373 |
| 4 | ΠΠ° ΠΠ Π·Π°Π³Π»ΡΠ΄ΡΠ²Π°ΠΉΡΡ, Π½ΠΎ ΠΏΡΠΎ Π±Π°Π·Ρ Π½Π΅ Π·Π°Π±ΡΠ²Π°ΠΉ
Π‘Π΅ΠΉΡΠ°Ρ Π² DevOps-ΠΈΠ½Π΄ΡΡΡΡΠΈΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ Π·Π°Ρ
ΠΎΠ΄ΠΈΡ ΡΠ΅ΠΌΠ° GenAIOps ΠΈ LLMOps, ΠΈ Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ
ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ±Π»Π°Π·Π½ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Ρ ΠΠ-ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ. ΠΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΠΠ β ΡΡΠΎ Π½Π°Π΄ΡΡΡΠΎΠΉΠΊΠ°. Π€ΡΠ½Π΄Π°ΠΌΠ΅Π½Ρ ΠΎΡΡΠ°Π΅ΡΡΡ ΠΏΡΠ΅ΠΆΠ½ΠΈΠΌ: ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΠΊΠ°ΠΊ ΠΊΠΎΠ΄, ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΠ·Π°ΡΠΈΡ, CI/CD ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ. ΠΠ΅Π· ΡΡΠΎΠ³ΠΎ Π»ΡΠ±Π°Ρ ΠΏΠΎΠΏΡΡΠΊΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠ±Π΅ΡΠ½Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΌΠΈ Π΄ΡΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠΈΠ½ΠΈΡΡ ΡΡΠΊΠ°ΠΌΠΈ.
Π£ΠΊΡΠ΅ΠΏΠΈΡΡ ΡΡΠΎΡ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π° ΠΊΡΡΡΠ΅ Π―Π½Π΄Π΅ΠΊΡ ΠΡΠ°ΠΊΡΠΈΠΊΡΠΌΠ° PRO Β«DevOps Π΄Π»Ρ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈΒ». Π‘ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡΡΡ Π²Ρ ΠΏΠΎΠΉΠΌΡΡΠ΅ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°ΡΡ ΠΊΠ»Π°ΡΡΠ΅Ρ, Π° ΡΠΏΡΠ°Π²Π»ΡΡΡ Π΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ Π±Π΅Π· ΡΡΡΠ½ΠΎΠ³ΠΎ Π²ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΡΡΠ²Π°.
Π§ΡΠΎ Π΅ΡΠ΅ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ΅Π±ΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ
: Linux, Docker, Kubernetes, Terraform, Ansible, GitLab CI/CD. ΠΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° Π΄Π»Ρ Π»Π°Π± ΡΠΆΠ΅ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠ° β Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡΡ ΡΡΠ΅Π½Π΄Ρ.
ΠΡΡΡ ΡΠ°ΡΡΡΠΈΡΠ°Π½ Π½Π° ΡΠ΅Ρ
, ΠΊΡΠΎ ΡΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π³ΡΠ΅ΠΉΠ΄Π΅ Π΄ΠΆΡΠ½+/ΠΌΠΈΠ΄Π».
ΠΡΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ Π²Π²ΠΎΠ΄Π½Π°Ρ ΡΠ°ΡΡΡ β ΠΌΠΎΠΆΠ½ΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ, Π° ΠΏΠΎΡΠΎΠΌ ΡΠ΅ΡΠ°ΡΡ.
Π Π΅ΠΊΠ»Π°ΠΌΠ°. Π Π΅ΠΊΠ»Π°ΠΌΠΎΠ΄Π°ΡΠ΅Π»Ρ: ΠΠΠ ΠΠΠ Β«ΠΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π―Π½Π΄Π΅ΠΊΡΠ°Β» ΠΠΠ 7704282033, erid: 2W5zFJzCuHj | 348 |
| 5 | ΠΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»ΡΠΌΠΈ ΠΏΡΠ΅ΠΌΠΈΠΈ Π’ΠΏΡΠΎΠ³Π΅Ρ πΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ...
ΠΠ΄Π΅ΡΡ ΠΈΠ³ΡΠ°Π΅Ρ Π±Π°ΡΠ°Π±Π°Π½Π½Π°Ρ Π΄ΡΠΎΠ±Ρ ΠΈ ΠΈΠ½ΡΡΠΈΠ³ΡΡΡΠ°Ρ ΠΌΡΠ·ΡΠΊΠ°... ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΠΆΠ΄Π°ΡΡ Π΄ΡΠ°ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΠΏΠ°ΡΠ·Ρ ΠΏΠ΅ΡΠ΅Π΄ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»Π΅ΠΉ β Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ ΠΎΠ½ ΠΎΠ΄ΠΈΠ½, ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎΠΌ Π³ΠΎΠ»ΠΎΡΠΎΠ². ΠΠΎΡΠΎΠ²Ρ?
Π Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ Β«ΠΡΠΎΠ΄ΡΠΊΡ Π³ΠΎΠ΄Π°Β» Π·ΠΎΠ»ΠΎΡΠ°Ρ ΠΌΡΡΡ Π΄ΠΎΡΡΠ°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ:
πNetVision Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π‘ΠΠ.
Π Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ Β«ΠΠ±Π»Π°ΡΠ½ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ Π³ΠΎΠ΄Π°Β» ΠΏΠΎΠ±Π΅ΠΆΠ΄Π°Π΅Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ:
πΠΡΠ°Π²ΠΈΡΠΎΠ½ Ρ ΠΏΠ°ΠΊΠΎΠΌ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Β«ΠΠ΅Π»ΠΈΡΡΒ»
ΠΠ²Π°Π½ΠΈΠ΅ Β«IT-ΠΈΠ²Π΅Π½Ρ Π³ΠΎΠ΄Π°Β» Π²ΡΡΡΠ°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ:
πΠΡΡΡΠΎΠ²ΠΎΠΊ! Π·Π° Π!Π₯Π°ΠΊΠ°ΡΠΎΠ½
Π Π² ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ Β«ΠΠΈΠ·Π°ΠΉΠ½ Π³ΠΎΠ΄Π°Β» ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ:
πAcademiaDev Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΈΡ.
ΠΠ°ΠΆΠ΄ΡΠΉ Π²Π°Ρ Π»Π°ΠΉΠΊ, Π³ΠΎΠ»ΠΎΡ Π²Π»ΠΈΡΠ»ΠΈ Π½Π° ΠΈΡΡ
ΠΎΠ΄ ΠΏΡΠ΅ΠΌΠΈΠΈ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠΌ Π²ΡΠ΅Ρ
β ΡΡΠ°Π²ΡΡΠ΅ πΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ
ΠΎΡΡ ΠΈ Π½Π΅ Π·Π°Π½ΡΠ»ΠΈ ΠΏΡΠΈΠ·ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°, Π½ΠΎ ΡΠΎΡΠ½ΠΎ ΠΎΡΡΠ°Π»ΠΈΡΡ Π² ΡΠ΅ΡΠ΄Π΅ΡΠΊΠ΅.
Π π₯, Π΅ΡΠ»ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ
Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠ΅ΠΉ ΠΈ Π³ΠΎΡΠΎΠ²Ρ Π²ΡΠ±ΠΈΡΠ°ΡΡ Π΅ΡΠ΅! | 317 |
| 6 | ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π΄Π΅Π½Ρ Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π½ΠΈΡ Π² Tproger Award!
ΠΠ²Π΅ Π½Π΅Π΄Π΅Π»ΠΈ, 16 ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ, 4 Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ β ΡΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΡΠΈΡΠ°Π»ΠΈ, ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ ΠΈ Π»Π°ΠΉΠΊΠ°Π»ΠΈ. Π ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΡΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π»ΠΈ! ΠΠΎΠΎΠ±ΡΠ΅ Π½Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΠΌ, ΡΡΠΎ Π²Ρ ΡΠ°ΠΌ Π½Π°Π΄Π΅Π»Π°Π»ΠΈ, ΡΠΆΠ΅ ΡΠ·Π½Π°ΡΡ Ρ
ΠΎΡΠ΅ΡΡΡ!
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΅Π³ΠΎΠ΄Π½Ρ Π·Π°ΡΠΈΠ½Π°Π»ΠΈΠΌ Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π»ΠΊΡ ΠΈ ΡΠ°Π·Π΄Π°Π΄ΠΈΠΌ ΠΏΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌΡ Π·ΠΎΠ»ΠΎΡΡΡ
ΠΌΡΡΠ΅ΠΉ. ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΡΠ°ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠΈΠ» ΡΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡΡ Π·Π° ΠΎΠ΄ΠΈΠ½ Π΄Π΅Π½Ρ?
ΠΡΠ»ΠΈ ΠΏΠΎΡΠ΅ΡΡΠ»ΠΈ, ΡΠΎ Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ Π²ΠΎΡ:
β ΠΡΠΎΠ΄ΡΠΊΡ Π³ΠΎΠ΄Π°
β ΠΠ±Π»Π°ΡΠ½ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ Π³ΠΎΠ΄Π°
β ΠΠ’-ΠΈΠ²Π΅Π½Ρ Π³ΠΎΠ΄Π°
β ΠΠΈΠ·Π°ΠΉΠ½ Π³ΠΎΠ΄Π°
Π’ΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΡ Π½Π΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅, ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΠΈΠΌ π
ΠΠΎΠΉΡΠΈ Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°ΡΡ: https://tprg.ru/bWfy | 85 |
| 7 | ΠΠ΄Π΅ Π»ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠ²ΠΊΠΈ? ΠΠ° ΡΠ΅Ρ
-ΠΈΠ²Π΅Π½ΡΠ°Ρ
!
ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΏΠΎ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, Π½ΠΎ Π½Π΅ ΠΏΠΎ Π·Π½Π°ΡΠΈΠΌΠΎΡΡΠΈ β Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΡ Β«IT-ΠΈΠ²Π΅Π½Ρ Π³ΠΎΠ΄Π°Β». ΠΠ΄Π΅ΡΡ ΡΠΎΠΆΠ΅ ΡΠΎΠ±ΡΠ°Π»ΠΈΡΡ ΡΡΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΠΈ Π΅ΡΠ»ΠΈ Π²Ρ Π΅ΡΠ΅ Π½Π΅ Π΄ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Π΄ΠΎ ΡΡΠ΅Π½ΠΈΡ ΠΈΡ
ΠΊΠ΅ΠΉΡΠΎΠ², ΡΠΎ Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΡΡΠΎ Π²ΠΌΠ΅ΡΡΠ΅.
β ΠΠ°Π±ΠΎΡΠ°ΡΠΎΡΠΈΡ Π§ΠΈΡΠ»ΠΈΡΠ΅Π»Ρ ΡΠΎΠ±ΡΠ°Π»Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡ ΡΡΡΠΎΠ³ΠΎ ΡΠΎΠ»ΡΠΊΠΎ K8s.
β ΠΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΠ΅ Selectel, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΡΠ°Π»ΠΎ ΡΠΆΠ΅ ΡΡΠ°Π΄ΠΈΡΠΈΠ΅ΠΉ, Π΄Π΅Π»Π°Π»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ in-house.
β Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ Ρ
Π°ΠΊΠ°ΡΠΎΠ½Π° ΠΡΡΡΠΎΠ²ΠΎΠΊ ΡΠΎΠ·Π΄Π°Π» ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΡΡΠΎΠ±Ρ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΌΠΎΠ³Π»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΈΠ· Π»ΡΠ±ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΠΌΠΈΡΠ°.
ΠΡΠ±ΠΈΡΠ°ΠΉΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ-ΡΠ°Π²ΠΎΡΠΈΡΠ° ΠΈ Π²ΡΡΡΠ°ΠΉΡΠ΅ Π΅ΠΉ Π·ΠΎΠ»ΠΎΡΡΡ ΠΌΡΡΡ β Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π½Π° ΡΠ°ΠΉΡΠ΅. | 152 |
| 8 | ΠΠ΅ΠΉΡΡ ΠΈΠ· Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ Β«ΠΠΈΠ·Π°ΠΉΠ½ Π³ΠΎΠ΄Π°Β» ΠΆΠ΄ΡΡ Π²Π°ΡΠΈΡ
Π³ΠΎΠ»ΠΎΡΠΎΠ²
ΠΡΡΠ°Π»Π°ΡΡ ΡΠΎΠ²Π½ΠΎ Π½Π΅Π΄Π΅Π»Ρ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ° Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π½ΠΈΡ Π² ΠΏΡΠ΅ΠΌΠΈΠΈ Tproger. Π£ΠΆΠ΅ Π΄ΠΈΠΊΠΎ Ρ
ΠΎΡΠ΅ΡΡΡ ΡΠ·Π½Π°ΡΡ, ΠΊΡΠΎ Π² Π»ΠΈΠ΄Π΅ΡΠ°Ρ
! ΠΠΎ Π΄Π°ΠΆΠ΅ ΠΌΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΡΠ°ΡΠ°Π΅ΠΌΡΡ Π΄Π΅ΡΠΆΠ°ΡΡ ΠΈΠ½ΡΡΠΈΠ³Ρ. Π ΡΡΠΎΠ±Ρ ΡΠΊΠΎΡΠΎΡΠ°ΡΡ Π²ΡΠ΅ΠΌΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΡΠΊΠΈΠ΅ ΠΊΠ΅ΠΉΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ:
β AcademiaDev ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°Π·Π»Π΅ΡΠ΅Π»Π°ΡΡ ΠΏΠΎ Π‘ΠΠ ΠΈ ΡΠΎΠ±ΡΠ°Π»Π° 48 ΠΌΠ»Π½ ΠΎΡ
Π²Π°ΡΠ°.
β ΠΠ-ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π‘ΠΎΠΊΡΠ°ΡΠΈΠΊ ΡΠ°ΡΡΠΊΠ°Π·Π°Π»Π°, ΠΊΠ°ΠΊ ΡΡΡΡΠΎΠ΅Π½Π° ΠΈΡ
ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ Π³ΠΎΡΠΎΠ²ΡΡ
ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΠΉ.
β ΠΡΡΡΠΎΠ²ΠΎΠΊ ΠΏΠΎΠ΄Π΅Π»ΠΈΠ»ΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π°ΠΉΠ΄Π΅Π½ΡΠΈΠΊΡ Π΄Π»Ρ Ostrovok! Tech.
ΠΠ°ΠΊΠΈΠ΄Π°ΠΉΡΠ΅ ΠΈΡ
ΡΠ²ΠΎΠΈΠΌΠΈ Π³ΠΎΠ»ΠΎΡΠ°ΠΌΠΈ: https://tprg.ru/WLvk | 149 |
| 9 | ΠΠ°ΠΊΠΎΠΉ ΠΊΠ΅ΠΉΡ ΡΡΠ°Π½Π΅Ρ ΠΎΠ±Π»Π°ΡΠ½ΡΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠΌ Π³ΠΎΠ΄Π°?
ΠΠ°Π²Π°ΠΉΡΠ΅ Π΄ΡΠΌΠ°ΡΡ, ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΡΠ²Π°ΠΉΡΠ΅ Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°ΡΡ! Π ΡΡΠΎΠΉ Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ Tproger Awards ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ°ΡΡΠ²ΡΡΡ ΠΏΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ. ΠΠΎΡ ΡΡΠ°ΡΡΠΈ ΠΏΡΠΎ ΠΈΡ
ΠΏΡΠΎΠ΄ΡΠΊΡΡ:
πΠΠΠ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΡ ΠΡΠ°Π²ΠΈΡΠΎΠ½Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΡΡΠΎΠ΅Π½ ΠΏΠΎ Π³ΠΈΠΏΠ΅ΡΠΊΠΎΠ½Π²Π΅ΡΠ³Π΅Π½ΡΠ½ΠΎΠΉ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ΅, ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΡΡΠΎΠ΅ ΠΈ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅.
πΠΠ-Π°ΡΡΠΈΡΡΠ΅Π½Ρ ΠΎΡ Π ΡΠ½ΠΈΡΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΠΈΠ½Π°Π»ΡΡ ΠΊΠ°ΠΊ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ, Π½ΠΎ ΡΠΆΠ΅ Π²ΡΡΠ΅Π» Π½Π° Π²Π½Π΅ΡΠ½ΠΈΠΉ ΡΡΠ½ΠΎΠΊ.
πVPS ΠΎΡ SmartApe, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠ³ ΠΎΠ½Π»Π°ΠΉΠ½-ΡΠΊΠΎΠ»Π΅ Π²ΡΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΎΡΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π² 5 ΡΠ°Π·.
πΠΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ½Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Β«Π¨ΡΡΡΠ²Π°Π»Β» ΠΎΡ ΠΠ°Π±ΠΎΡΠ°ΡΠΎΡΠΈΠΈ Π§ΠΈΡΠ»ΠΈΡΠ΅Π»Ρ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΡΠ°Π»Π° ΡΡΡΠΎΠΉΡΠΈΠ²Π° ΠΊ Π²ΡΡΠΎΠΊΠΈΠΌ Π½Π°Π³ΡΡΠ·ΠΊΠ°ΠΌ.
πΠΠ±Π»Π°ΡΠ½Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° ΠΎΡ Selectel, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌ ΡΠ°ΠΌΠΈΠΌ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»ΠΈΠΊΠΎΠ² ΠΈ ΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ 24/7.
Π§ΡΠΎ ΠΈΠ· ΡΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΠΎΠΉΠ½ΠΎ Π·ΠΎΠ»ΠΎΡΠΎΠΉ ΠΌΡΡΠΈ β ΡΠ΅ΡΠ°ΡΡ Π²Π°ΠΌ. ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΠ΅ Π½Π° ΡΠ°ΠΉΡ Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π²ΡΠ±ΠΈΡΠ°ΠΉΡΠ΅ ΡΠΎΡ ΡΠ°ΠΌΡΠΉ ΠΊΠ΅ΠΉΡ π | 125 |
| 10 | ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ Π»ΡΡΡΠΈΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ Π³ΠΎΠ΄Π°π
Π£ Π½Π°Ρ Π² ΡΠ°Π·Π³Π°ΡΠ΅ ΠΏΡΠ΅ΠΌΠΈΡ Tproger β Π² Π½Π΅ΠΉ ΠΌΡ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π»ΡΡΡΠΈΠ΅ ΠΠ’-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΠ΅Π΄ΠΈ 16 ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π±Π»ΠΈΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΠΈΠΌΡΡ Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°ΠΌΠΈ Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ Β«ΠΡΠΎΠ΄ΡΠΊΡ Π³ΠΎΠ΄Π°Β».
Π Π½Π΅ΠΉ ΡΡΠ°ΡΡΠ²ΡΡΡ ΠΏΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ. ΠΠ·ΡΡΠ°Π΅ΠΌ:
πΠΠ’Π ΠΠ°Π½ΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ASOC-ΡΠΊΠ°Π½Π΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π» ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π·Π° ΠΌΠ΅ΡΡΡ.
πΠΡΠ°Π²ΠΈΡΠΎΠ½ Π΄Π΅Π»ΠΈΡΡΡ ΠΊΠ΅ΠΉΡΠΎΠΌ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΠ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π±Π΅Π· Π°Π³Π΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΡΠ΅ΡΡΠΈΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ.
πNetVision Π±ΠΎΡΠ΅ΡΡΡ Ρ Π½Π΅Π΄ΠΎΠ±ΡΠΎΡΠΎΠ²Π΅ΡΡΠ½ΡΠΌΠΈ ΡΠ°ΠΌΠΎΠΊΠ°ΡΡΠΈΠΊΠ°ΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π‘ΠΠ.
πSolar ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ appScreener, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΡΠΎΡ ΠΈΠ· ΡΡΠ°ΡΡΠ°ΠΏΠ° Π΄ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ° ΡΡΠ½ΠΊΠ°; ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Π½Π°Π΄ Π½ΠΈΠΌ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΈ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ Π½Π°ΡΡΠ½ΡΠ΅ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ.
πReksoft ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ Brain ERM, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π΄ΠΎ 70% Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΡΡΡΠΈΠ½Π½ΡΡ
HR-ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ
.
ΠΡΠ»ΠΈ Π²Ρ Π΅ΡΠ΅ Π½Π΅ ΠΏΡΠΎΠ³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π»ΠΈ Π·Π° ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ²ΡΠΈΠΉΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡ β ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ. ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΠ΅ Π½Π° ΡΠ°ΠΉΡ ΠΏΡΠ΅ΠΌΠΈΠΈ ΠΈ Π²ΡΠ±ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ²ΠΎΠΉ ΡΠ΅Π»ΠΈΠ· Π³ΠΎΠ΄Π°. ΠΡΡΡΡ Π·ΠΎΠ»ΠΎΡΠ°Ρ ΠΌΡΡΡ Π΄ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π»ΡΡΡΠΈΡ
π₯ | 119 |
| 11 | ΠΡΠ΅ΠΌΠΈΡ Tproger ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠΊΡΡΡΠΎΠΉ! π
ΠΠ°ΠΆΠ΄ΡΠΈΜ Π³ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΈΠΊΡΡΡ Π±Π°Π³ΠΈ, Π²ΡΠΊΠ°ΡΡΠ²Π°ΡΡ ΡΠ΅Π΄ΠΈΠ·Π°ΠΈΜΠ½, Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠΈΡΠΈ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½ΠΎΠ²ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΡ Π²Π½ΡΡΡΠΈ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ
Π½Π°ΠΌ Π±ΡΠ΅Π½Π΄ΠΎΠ². ΠΠ°ΠΊΠΈΠ΅-ΡΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ, Π½ΠΎ ΡΠ°ΡΠ΅ Π²Π½ΡΡΡΡΠ½ΠΊΠ° Π½Π΅ Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΈ ΠΎΡΠ΅Π½ΠΈΡΡ ΠΏΠΎ Π΄ΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Ρ Π΅Π΅ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ.
ΠΡΡΡΠ΄Π° ΡΠΎΠ΄ΠΈΠ»Π°ΡΡ ΠΈΠ΄Π΅Ρ ΠΡΠ΅ΠΌΠΈΠΈ Tproger. Π Π½Π΅ΠΉ ΠΠ’-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π΄Π΅Π»ΡΡΡΡ ΡΡΠΏΠ΅ΡΠ½ΡΠΌΠΈ ΠΊΠ΅ΠΈΜΡΠ°ΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π° Π°ΡΠ΄ΠΈΡΠΎΡΠΈΡ ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π·Π°ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ Π½Π°Π³ΡΠ°Π΄Ρ β Π·ΠΎΠ»ΠΎΡΠΎΠΉ ΠΌΡΡΠΈ π
Π ΠΏΡΠ΅ΠΌΠΈΠΈ ΡΡΠ°ΡΡΠ²ΡΡΡ 16 ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ Π² 4 Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΡΡ
:
β« ΠΡΠΎΠ΄ΡΠΊΡ Π³ΠΎΠ΄Π°
ΠΠ΄Π΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ
Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ: ΠΎΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΠ ΠΈ ΠΠ’-ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ Π΄ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.
β« ΠΠ±Π»Π°ΡΠ½ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ Π³ΠΎΠ΄Π°
Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π²Π°Ρ ΠΆΠ΄ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, ΠΎΠ±Π»Π°ΡΠ½ΡΠ΅ ΡΡΠ΅Π΄Ρ Π΄Π»Ρ AI/ML, ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ°ΠΌΠΈ ΠΈ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠ΅ Π²ΡΡΠΎΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ Π±ΡΡΡΡΡΠΉ Π·Π°ΠΏΡΡΠΊ ΡΠΈΡΡΠΎΠ²ΡΡ
ΡΠ΅ΡΠ²ΠΈΡΠΎΠ².
β« IT-ΠΈΠ²Π΅Π½Ρ Π³ΠΎΠ΄Π°
Π£ΡΠ°ΡΡΠ½ΠΈΠΊΠΈ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ
ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡ
ΠΈ Ρ
Π°ΠΊΠ°ΡΠΎΠ½Π°Ρ
, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΠΈΡ
ΡΡΡΡΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠ².
β« ΠΠΈΠ·Π°ΠΉΠ½ Π³ΠΎΠ΄Π°
Π Π½ΠΎΠΌΠΈΠ½Π°ΡΠΈΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΠΏΡΠΎΠ΅ΠΊΡΡ, Π³Π΄Π΅ Π΄ΠΈΠ·Π°ΠΉΠ½ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Ρ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈΠ΅ΠΉ: Π½Π΅ΠΉΡΠΎΡΠ΅ΡΠΈ, ΡΠΎΠ·Π΄Π°ΡΡΠΈΠ΅ ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΠΈ Π·Π° ΡΠ΅ΠΊΡΠ½Π΄Ρ; ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΈΠΈ, ΡΠΎΠ±ΡΠ°Π²ΡΠΈΠ΅ Π΄Π΅ΡΡΡΠΊΠΈ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΊΠΎΠ½ΡΠ°ΠΊΡΠΎΠ²; ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ, ΡΡΠ°Π½ΡΠ»ΠΈΡΡΡΡΠΈΠ΅ ΡΠ΅Π½Π½ΠΎΡΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΎΠ½ΠΈ Π² Π²Π°ΡΠΈΡ
ΡΡΠΊΠ°Ρ
π
1. ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΠ΅ Π½Π° ΡΠ°ΠΉΡ ΠΏΡΠ΅ΠΌΠΈΠΈ.
2. ΠΡΠ±ΠΈΡΠ°ΠΉΡΠ΅ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ²ΡΠΈΠ΅ΡΡ ΠΊΠ΅ΠΉΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ.
3. Π Π²ΡΡΡΠ°ΠΉΡΠ΅ ΠΈΠΌ Π·ΠΎΠ»ΠΎΡΡΡ ΠΌΡΡΡ.
ΠΠΎΠ»ΠΎΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΄Π»ΠΈΡΡΡ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ° ΡΠ΅Π²ΡΠ°Π»Ρ ΠΈ ΡΠΆΠ΅ Π² ΠΌΠ°ΡΡΠ΅ ΠΌΡ ΠΎΠ±ΡΡΠ²ΠΈΠΌ ΠΏΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»Π΅ΠΉ. Stay tuned! | 198 |
| 12 | INT {old_foreignkey_name}
TO {new_foreignkey_name}"""
)
class Migration(migrations.Migration):
dependencies = [
("newapp", "0001_initial"),
]
operations = [
migrations.RunPython(rename_indexes, migrations.RunPython.noop),
migrations.RunPython(rename_foreignkeys, migrations.RunPython.noop),
]
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ:
(env)$ python manage.py migrate
ΠΡΠ»ΠΈ ΡΡΠΎ-ΡΠΎ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΠΎΠΆΠΈΠ΄Π°Π»ΠΎΡΡ, ΠΌΠΈΠ³ΡΠΈΡΡΠΉΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ, ΠΈΡΠΏΡΠ°Π²ΡΡΠ΅ ΠΊΠΎΠ΄ ΠΈ Π·Π°ΡΠ΅ΠΌ ΡΠ½ΠΎΠ²Π° ΠΌΠΈΠ³ΡΠΈΡΡΠΉΡΠ΅. ΠΡΠΌΠ΅Π½ΠΈΡΡ ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΡΠ΅ΠΌ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π³ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
(env)$ python manage.py migrate 0001
6. Π£Π±ΠΎΡΠΊΠ°
ΠΠΎΡΠ»Π΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π²ΠΎ Π²ΡΠ΅Ρ
Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΡ
ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΡ
ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΈΡΡΠΈΡΡ ΠΈΡ
ΠΏΡΡΠ΅ΠΌ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ django-rename-app ΠΈΠ· pip requirements ΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π΄Π΅ΠΏΠ»ΠΎΠΉΠΌΠ΅Π½ΡΠ°.
ΠΡΠΎΠ³ΠΈ
Π Π΅Π΄ΠΊΠΎ ΡΠ΄Π°Π΅ΡΡΡ ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π²ΡΠ΅ΠΌ Π²Π°ΡΠΈΠΌ Π½ΡΠΆΠ΄Π°ΠΌ. Π‘ΠΈΡΡΠ΅ΠΌΡ Π²ΡΠ΅Π³Π΄Π° ΡΡΠ΅Π±ΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΈ ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Django ΠΈ django-rename-app, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΡΠ°ΠΉΡΠ°ΠΌΠΈ Π² ΡΡΠΈΠ»Π΅ Agile, ΡΠΈΡΡΠΎ ΠΈ Π³ΠΈΠ±ΠΊΠΎ.
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ Β«How to Rename a Django AppΒ».
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Django ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ ΡΠ½Π°ΡΠ°Π»Π° Π½Π° Pythonist.
Π§ΠΈΡΠ°ΡΡ: https://pythonist.ru/?p=18869
@django_prog | ΠΡΡΠ³ΠΈΠ΅ Π½Π°ΡΠΈ ΠΊΠ°Π½Π°Π»Ρ | 24 |
| 13 | ΠΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Django
Aidas Bendoraitis, Π°Π²ΡΠΎΡ ΠΊΠ½ΠΈΠ³ΠΈ Β«Django 3 Web Development CookbookΒ», ΡΠ°ΡΡΠΊΠ°Π·Π°Π», ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Django.
ΠΠΎΠ³Π΄Π° Ρ Π½Π°ΡΠ°Π» ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ MVP (ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΆΠΈΠ·Π½Π΅ΡΠΏΠΎΡΠΎΠ±Π½ΡΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠΌ) ΠΌΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° 1st things 1st, Ρ ΡΠΏΠ΅ΡΠ²Π° Π΄ΡΠΌΠ°Π», ΡΡΠΎ ΡΡΠΎΡ Django-ΠΏΡΠΎΠ΅ΠΊΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΠ²ΡΡΠ΅Π½ ΠΏΡΠΈΠΎΡΠΈΡΠΈΠ·Π°ΡΠΈΠΈ. ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Ρ ΡΠΏΡΡΡΡ Ρ ΠΏΠΎΠ½ΡΠ», ΡΡΠΎ ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎ ΡΡΡΠΈ SaaS (software as a service, ΠΠ ΠΊΠ°ΠΊ ΡΡΠ»ΡΠ³Π°), Π° ΠΏΡΠΈΠΎΡΠΈΡΠΈΠ·Π°ΡΠΈΡ β Π»ΠΈΡΡ ΡΠ°ΡΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π° Π΄Π»Ρ SaaS. Π ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ ΠΌΠ½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΠΎΡΡ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΡΡΠΉ ΠΈ Π»ΡΡΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄. ΠΠΎΡ ΠΊΠ°ΠΊ Ρ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π».
0. ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ Π²Π°Ρ ΠΊΠΎΠ΄ ΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π±Π°Π·Ρ
Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ git pull ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ Π²ΡΠ΅ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
.
[python_ad_block]
1. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ django-rename-app
ΠΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ django-rename-app Π² pip requirements ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΅Π³ΠΎ. ΠΠΈΠ±ΠΎ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
(venv)$ pip install django-rename-app
ΠΠ½Π΅ΡΠΈΡΠ΅ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² INSTALLED_APPS Π² Π²Π°ΡΠΈΡ
Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
:
INSTALLED_APPS = [
# β¦
"django_rename_app",
]
2. ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΡΠΉΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
Π‘ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΡΠ°ΡΠΎΠ΅ ΠΈΠΌΡ (oldapp) Π½Π° Π½ΠΎΠ²ΠΎΠ΅ (newapp) Π² Π²Π°ΡΠΈΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
ΠΈ ΡΠ°Π±Π»ΠΎΠ½Π°Ρ
.
3. ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΈΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°ΠΌ, Π³Π΄Π΅ ΠΎΠ½ΠΎ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π² ΠΊΠΎΠ΄Π΅
ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΈΠΌΡ Π²ΠΎ Π²ΡΠ΅Ρ
Π²Π°ΡΠΈΡ
ΠΈΠΌΠΏΠΎΡΡΠ°Ρ
, ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΡ
ΠΈ ΠΏΡΡΡΡ
ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ².
ΠΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ oldapp, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ Π²ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ.
4. ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ rename_app
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
(env)$ python manage.py rename_app oldapp newapp
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°ΠΌΠ΅Π½ΠΈΡ ΠΏΡΠ΅ΡΠΈΠΊΡ ΠΈΠΌΠ΅Π½ΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΡΡ
Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ
django_content_type ΠΈ django_migrations.
ΠΡΠ»ΠΈ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ° ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³Π° ΠΈ ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½Π°, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ rename_app ΠΏΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΉ Π² ΡΠ²ΠΎΠΈΡ
ΡΠΊΡΠΈΠΏΡΠ°Ρ
Π΄Π΅ΠΏΠ»ΠΎΠΉΠΌΠ΅Π½ΡΠ° (Ansible, Docker ΠΈ Ρ.ΠΏ..).
5. ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΡΡΡΡΡ ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π²Π½Π΅ΡΠ½ΠΈΡ
ΠΊΠ»ΡΡΠ΅ΠΉ.
(env)$ python manage.py makemigrations newapp --empty --name rename_indexes
ΠΠ°ΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ:
# newapp/migrations/0002_rename_indexes.py
from django.db import migrations
def named_tuple_fetch_all(cursor):
"Return all rows from a cursor as a namedtuple"
from collections import namedtuple
desc = cursor.description
Result = namedtuple("Result", [col[0] for col in desc])
return [Result(*row) for row in cursor.fetchall()]
def rename_indexes(apps, schema_editor):
from django.db import connection
with connection.cursor() as cursor:
cursor.execute(
"""SELECT indexname FROM pg_indexes
WHERE tablename LIKE 'newapp%'"""
)
for result in named_tuple_fetch_all(cursor):
old_index_name = result.indexname
new_index_name = old_index_name.replace(
"oldapp_", "newapp_", 1
)
cursor.execute(
f"""ALTER INDEX IF EXISTS {old_index_name}
RENAME TO {new_index_name}"""
)
def rename_foreignkeys(apps, schema_editor):
from django.db import connection
with connection.cursor() as cursor:
cursor.execute(
"""SELECT table_name, constraint_name
FROM information_schema.key_column_usage
WHERE constraint_catalog=CURRENT_CATALOG
AND table_name LIKE 'newapp%'
AND position_in_unique_constraint notnull"""
)
for result in named_tuple_fetch_all(cursor):
table_name = result.table_name
old_foreignkey_name = result.constraint_name
new_foreignkey_name = old_foreignkey_name.replace(
"oldapp_", "newapp_", 1
)
cursor.execute(
f"""ALTER TABLE {table_name}
RENAME CONSTRA[...] | 9 |
| 14 | No text... | 5 |
| 15 | .
2. ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
ΠΊΠ½ΠΈΠ³ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ hydrate. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
3. ΠΠ΅ΡΠΎΠ΄ add_book ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ book ΠΈΠ· title, ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ Π΅Π΅ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
, Π° Π·Π°ΡΠ΅ΠΌ ΠΎΡΠΈΡΠ°Π΅Ρ title.
4. ΠΠ΅ΡΠΎΠ΄ delete_book ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΊΠ½ΠΈΠ³Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ.
ΠΡΠΎΠΉΠ΄Ρ Π²ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΡΠ°Π³ΠΈ, ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ http://127.0.0.1:8080/, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄ΠΎΠ»ΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ²ΠΎΠΈ Π»ΡΠ±ΠΈΠΌΡΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΡ Π½Π° Django Π·Π° 20 ΠΌΠΈΠ½ΡΡ. ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ΅Π°ΠΊΡΠΈΠ²Π½ΠΎΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠΎΠ»Π½ΡΠΌ ΡΡΠ΅ΠΊΠΎΠΌ Π½Π° Django, Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ JavaScript. Π’Π°ΠΊΠΆΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Unicorn, ΡΡΠΎΠ±Ρ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΠΊΠ½ΠΈΠ³ΠΈ, Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΊΠΎΠ΄ Π·Π΄Π΅ΡΡ.
Π£ΡΠΏΠ΅Ρ
ΠΎΠ² Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΊΠΎΠ΄Π°!
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ Β«Full-Stack Reactive Website in Django (No JavaScript)Β».
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π‘Π°ΠΉΡ Π½Π° Django Π·Π° 20 ΠΌΠΈΠ½ΡΡ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ ΡΠ½Π°ΡΠ°Π»Π° Π½Π° Pythonist.
Π§ΠΈΡΠ°ΡΡ: https://pythonist.ru/?p=15870
@django_prog | ΠΡΡΠ³ΠΈΠ΅ Π½Π°ΡΠΈ ΠΊΠ°Π½Π°Π»Ρ | 8 |
| 16 | jango Books {% unicorn_scripts %}
{% csrf_token %}
Favourite Django Books
{% unicorn 'book' %}
ΠΠΎΠ³ΠΈΠΊΠ° ΡΠ°Π±ΠΎΡΡ
1. ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π±Π°Π·ΠΎΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ Django Π΄Π»Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΠ²ΡΠ·Π°Π² views ΠΈ urls Π²ΠΌΠ΅ΡΡΠ΅.
2. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Unicorn Π½ΡΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π² Π²Π΅ΡΡ
Π½Π΅ΠΉ ΡΠ°ΡΡΠΈ HTML-ΡΠ°Π±Π»ΠΎΠ½Π° Django.
3. ΠΡ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ unicorn_scripts ΠΈ crsf_token Π² ΡΠ°Π±Π»ΠΎΠ½ Django HTML.
ΠΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Unicorn, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠ»Π΅Π΄ΡΠ΅Ρ Π»ΡΡΡΠΈΠΌ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°ΠΌ Django ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠ΅Π±ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ CRSF-ΡΠΎΠΊΠ΅Π½Π° Π½Π° Π»ΡΠ±ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅, ΡΠ²Π»ΡΡΡΠ΅ΠΉΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ. ΠΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ AJAX Π½Π΅ Π±ΡΠ΄ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ.
Π’Π°ΠΊΠΆΠ΅ Unicorn ΠΈΠΌΠ΅Π΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π½Π°Π±ΠΎΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ
ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Ρ Π² ΡΠ°Π±Π»ΠΎΠ½. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ book Π² ΡΠ°ΠΉΠ» index.html.
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΈΠ³
Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΌΡ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΊΠ½ΠΈΠ³ Π±Π΅Π· ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Unicorn.
Π¨Π°Π³ 1
Π ΠΊΠΎΡΠ½Π΅ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠ΅ ΠΏΠ°ΠΏΠΊΠΈ (unicorn ΠΈ components) ΠΈ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ book.py.
Π¨Π°Π³ 2
Π ΠΏΠ°ΠΏΠΊΠ΅ unicorn, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ°Π½Π΅Π΅, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π΅ΡΠ΅ ΠΎΠ΄Π½Ρ ΠΏΠ°ΠΏΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ templates, Π²Π½ΡΡΡΠΈ Π½Π΅Π΅ β ΠΏΠ°ΠΏΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ unicorn ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π²Π½ΡΡΡΠΈ ΡΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ book.html. (Π£ Π²Π°Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ ΠΏΡΡΡ unicorn/templates/unicorn/book.html).
Π¨Π°Π³ 3
ΠΠ½ΡΡΡΡ book.html Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
{% for book in books %}
* {{ book.title }} Delete Book {% empty %}
Database Empty | Add your favourite Django book
{% endfor %}
Add Books
Π§ΡΠΎ Π·Π΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ?
ΠΠ½ΡΡΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Ρ Π½Π°Ρ Π΅ΡΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΎΠ±ΡΡΠ½ΠΎΠΌΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΡ Django.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ input. ΠΡΡ Π·Π½Π°ΠΊΠΎΠΌΠΎ, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π°ΡΡΠΈΠ±ΡΡΠ° unicorn: model. ΠΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π² Π²Π°ΡΠ΅ΠΌ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠ²ΡΠ·Π°Π½ΠΎ ΠΊ ΡΡΠΎΠΌΡ Π²Π²ΠΎΠ΄Ρ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΠΌΡ ΠΏΠΎΠ»Ρ Π±ΡΠ΄Π΅Ρ title.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. unicorn: model β ΡΡΠΎ ΠΌΠ°Π³ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ Π²Ρ
ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ Π±ΡΠΊΠ΅Π½Π΄Π°.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Β«Add BooksΒ» Ρ Π°ΡΡΠΈΠ±ΡΡΠΎΠΌ unicorn:click. ΠΡΠΎΡ Π°ΡΡΠΈΠ±ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Unicorn ΠΏΡΠΈΠ²ΡΠ·Π°ΡΡ Π±ΡΠΊΠ΅Π½Π΄-ΠΌΠ΅ΡΠΎΠ΄ add_book ΠΊ ΡΠΎΠ±ΡΡΠΈΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ° click.
Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠ° Β«Delete BookΒ» ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Unicorn ΠΏΡΠΈΠ²ΡΠ·Π°ΡΡ Π±ΡΠΊΠ΅Π½Π΄-ΠΌΠ΅ΡΠΎΠ΄ delete_book. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π»ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠ½ΠΈΠ³ΠΈ Π² ΡΡΠ½ΠΊΡΠΈΡ delete_book, ΡΡΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΊΠ½ΠΈΠ³Ρ.
Π§ΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²Ρ
ΠΎΠ΄Π΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ lazy ΠΈΠ»ΠΈ defer Π² ΠΊΠΎΠ½Π΅Ρ unicorn:model.
ΠΡΡΠΈΠ±ΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² ΡΠ°Π±Π»ΠΎΠ½Π°Ρ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ unicorn:, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΡΡΠΊΠ°Ρ u:. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΈΡ
ΡΠΈΠΏΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ str, int, list, dictionary, decimal ΠΈ Django Model.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Unicorn ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΠΎΡ
Π²Π°ΡΡΠ²Π°ΡΡΠΈΠΉ Π²Π΅ΡΡ ΡΠ°Π±Π»ΠΎΠ½ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°.
Π¨Π°Π³ 4
ΠΠ½ΡΡΡΠΈ book.py Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
from django_unicorn.components import UnicornView
from books.models import Book
class BookView(UnicornView):
title: str = ""
books = Book.objects.none()
def hydrate(self):
self.books = Book.objects.all()
def add_book(self):
if self.title != "":
book = Book(title=self.title)
book.save()
self.title = ""
def delete_book(self, id):
try:
book = Book.objects.get(id=id)
book.delete()
except:
pass
ΠΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΊΠΎΠ΄Π°
1. ΠΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ UnicornView, Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡ TemplateView. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° ΠΎΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ view Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠ»Π°ΡΡΠΎΠ² Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΡΠΎΡΡΡΠΌ[...] | 6 |
| 17 | Π‘Π°ΠΉΡ Π½Π° Django Π·Π° 20 ΠΌΠΈΠ½ΡΡ
Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²Π΅Π±-ΡΠ°ΠΉΡΡ, ΡΡΠ΅Π±ΡΡΡΠΈΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, ΡΠΎΠ·Π΄Π°ΡΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ
ΡΡΠΎΠ½ΡΠ΅Π½Π΄-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ², ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ React, Vue.js ΠΈ Π΄ΡΡΠ³ΠΈΠ΅. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½ΠΈΡ
ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΈ ΠΏΠ»ΡΡΡ ΠΈ ΠΌΠΈΠ½ΡΡΡ. ΠΠ°ΠΌ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡΡΡ ΡΡΠΈΡΡΠ²Π°ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°, ΡΡΠΎΠΈΠΌΠΎΡΡΡ Ρ
ΠΎΡΡΠΈΠ½Π³Π°, SEO-ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ, ΡΠ°Π·Π»ΠΈΡΠΈΡ Π² ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ ΠΈ, Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΡΠ»ΡΡΠ°ΡΡ
, Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠΈ.
Π‘ΠΎΠ·Π΄Π°Π²Π°Ρ ΡΠ°ΠΉΡ Π½Π° Django, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΡΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΡΠ΅ΠΌ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ JS-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°ΠΌΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ Django Π½Π΅ ΡΡΠΎΠ»Ρ ΡΠ»ΠΎΠΆΠ΅Π½, ΡΡΠ΅Π±ΡΠ΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΠΊΠΎΠ΄Π° ΠΈ ΠΌΠ΅Π½ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ Π²Π°ΠΌ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊ Π·Π° 20 ΠΌΠΈΠ½ΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΡΠ°ΠΉΡ Π½Π° Django.
Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ Π½Π°ΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ (Π½Π° Π²ΡΠ±ΠΎΡ). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Sockpuppet, Reaction ΠΈΠ»ΠΈ Unicorn. ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±Π΅Π· ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ JavaScript ΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌ Unicorn.
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π½Π°ΡΠ°ΡΡ
Π§ΡΠΎΠ±Ρ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΡΠΎΠΌΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Ρ, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ:
* ΠΠ°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π²Π΅Π±-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ° Django.
* ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°Π½ΠΈΠ΅ Docker.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΈ ΠΎΠ±Π·ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠΎΡ ΠΊΡΠ°ΡΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ΅ΠΉΡΠ°Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ:
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π½ΠΎΠ²ΡΡ ΠΊΠ½ΠΈΠ³Ρ, Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ. Π’Π°ΠΊΠΎΠΉ ΠΆΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² ΠΎΠ΄Π½ΠΎΡΡΡΠ°Π½ΠΈΡΠ½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΠΊΠ»ΠΎΠ½ΠΈΡΡΠΉΡΠ΅ Π²Π΅ΡΠΊΡ base ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ django-reactive:
$ git clone https://github.com/Samuel-2626/django-reactive --branch base --single-branch
$ cd django-reactive
ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Docker, ΡΡΠΎΠ±Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ ΠΈ Π·Π°ΠΏΡΡΠΊ Django Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ. ΠΠ· ΠΊΠΎΡΠ½Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΎΠ±ΡΠ°Π·Ρ ΠΈ ΡΠ°ΡΠΊΡΡΡΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Docker:
$ docker-compose up -d --build
ΠΠ°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΡΠΏΠ΅ΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ΅ΡΠ²Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ:
$ docker-compose exec web python manage.py migrate
$ docker-compose exec web python manage.py createsuperuser
$ docker-compose exec web python manage.py run server
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»Ρ Book Π² ΡΠ°ΠΉΠ»Π΅ books/models.py. ΠΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
from django.db import models
class Book(models.Model):
title = models.CharField(max_length=200)
def __str__(self):
return self.title
[django_ad_block]
Π Π°Π±ΠΎΡΠ° Ρ Unicorn
Unicorn β ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ½ΡΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠΈΠ²Π½ΠΎ ΡΠ»ΡΡΡΠ°ΡΡΠΈΠΉ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Django. ΠΠ½ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ DOM Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² AJAX Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅.
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Unicorn ΠΊ Π²Π°ΡΠΈΠΌ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# Third-party
"django_unicorn", # new
]
ΠΠ°Π»Π΅Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΠΉΠ» urls.py Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
from django.urls import path, include
path("unicorn/", include("django_unicorn.urls")), # new
ΠΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ?
1. Unicorn β ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΠ»ΡΡΡΠ°ΡΡΠ°Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Django. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½Π°Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π±ΡΡΡΡΠΎ ΠΈ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΈΡ Π΄Π»Ρ SEO.
2. ΠΠ°ΡΠ΅ΠΌ Unicorn ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΊ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΈ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²ΡΠ·ΠΎΠ²Ρ AJAX.
3. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Unicorn Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ DOM.
URL ΠΏΡΠΎΠ΅ΠΊΡΠ°, views ΠΈ template
Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ URL-Π°Π΄ΡΠ΅ΡΠ°, Π²ΡΡΡΠΊΠΈ (views) ΠΈ ΡΠ°Π±Π»ΠΎΠ½Ρ (template) Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΠΉΠ» urls.py ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
path("", views.index), # new
ΠΠ°Π»Π΅Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΠΉΠ» views.py, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
def index(request):
return render(request, "index.html", {})
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΠΉΠ» index.html:
{% load unicorn %} D[...] | 3 |
| 18 | No text... | 4 |
| 19 | Π΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π² Π½Π΅Π³ΠΎ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΠ²ΠΎΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ. Π ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠ°Π±ΠΎΡΠΎΠ΄Π°ΡΠ΅Π»ΠΈ ΡΠΌΠΎΠ³ΡΡ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΏΠΎ Π»ΡΠ±ΠΎΠΉ ΠΈΠ· ΡΡΡΠ»ΠΎΠΊ ΠΈ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΏΡΠΎΠ΄Π΅Π»Π°Π½Π½ΡΡ Π²Π°ΠΌΠΈ ΡΠ°Π±ΠΎΡΡ.
ΠΡΠΎ Π²Π°ΠΆΠ½ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠΊΡΠ΅ΠΏΠ»ΡΠ΅Ρ Π΄ΠΎΠ²Π΅ΡΠΈΠ΅ ΠΊ Π²Π°ΠΌ ΠΊΠ°ΠΊ ΠΊ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΡ. Π£Π²ΠΈΠ΄Π΅Π² ΠΏΠΎΡΡΡΠΎΠ»ΠΈΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ
Π²Π°ΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π»ΡΠ΄ΠΈ ΠΏΠΎΠΉΠΌΡΡ, ΡΡΠΎ Π²Ρ ΠΎΠΏΡΡΠ½ΡΠΉ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²Π°ΡΠΈ ΡΠ°Π½ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎΠ²ΡΡΡΡΡΡ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΌΠ΅ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°ΡΡ ΡΠ°ΠΉΡΡ Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅.
ΠΡΠΎ Π½Π΅ ΡΠ°ΠΊ Π΄ΠΎΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΊΠ°ΠΆΠ΅ΡΡΡ. ΠΠ»Ρ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ Π²Π°ΡΠΈΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Python Anywhere ΠΈΠ»ΠΈ Heroku.
ΠΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π½Π° Django, ΡΠ°Π·Π²Π΅ΡΠ½ΠΈΡΠ΅ ΠΈΡ
Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡ ΡΡΠΈΡΠ°Π΅ΡΠ΅, ΡΡΠΎ ΡΠΆΠ΅ Π³ΠΎΡΠΎΠ²Ρ Π²Π·ΡΡΡΡΡ Π·Π° Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ? ΠΠΎΠ·ΡΠΌΠΈΡΠ΅ Π»ΡΠ±ΡΡ ΠΈΠ· ΡΡΠΈΡ
ΠΈΠ΄Π΅ΠΉ ΠΈ ΠΏΡΠΈΡΡΡΠΏΠ°ΠΉΡΠ΅ ΠΊ ΡΠ°Π±ΠΎΡΠ΅. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½Π° ΡΠ°Π±ΠΎΡΠ° Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½ΠΎ Ρ Π²Π°Ρ Π½Π΅Ρ ΠΎΠΏΡΡΠ°, ΡΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π²Π΅ΡΠ½Π΅Π΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΌΠ΅ΡΡΠΎ.
Π£Π΄Π°ΡΠΈ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ!
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ 11 ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π½Π° Django Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ ΡΠ½Π°ΡΠ°Π»Π° Π½Π° Pythonist.
Π§ΠΈΡΠ°ΡΡ: https://pythonist.ru/?p=14677
@django_prog | ΠΡΡΠ³ΠΈΠ΅ Π½Π°ΡΠΈ ΠΊΠ°Π½Π°Π»Ρ | 6 |
| 20 | Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ).
ΠΡ Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° Django ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ API. ΠΡΠΎ-ΡΠΎ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π» ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ Ρ API-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ, ΠΈ Π²Ρ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
Π‘ΠΎΠ·Π΄Π°Π² ΡΠ°ΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Ρ ΡΠ°Π·Π±Π΅ΡΠ΅ΡΠ΅ΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ API ΠΈ Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ
Π² ΡΠ²ΠΎΠΈΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
. ΠΡΠΈ Π·Π½Π°Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ΅Π½Π½ΡΠΌΠΈ, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°Ρ
ΠΎΡΠΈΡΠ΅ ΡΡΠ°ΡΡ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΡ Π½Π°ΡΠ»ΠΈ Π΄Π»Ρ Π²Π°Ρ Π½Π° YouTube:
8. ΠΠ°Π³Π°Π·ΠΈΠ½ Π½Π° Django
ΠΡ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ ΡΠ°ΠΉΡΠ°ΠΌΠΈ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠΈΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Amazon? ΠΠ° ΡΠ°ΠΊΠΈΡ
ΡΠ°ΠΉΡΠ°Ρ
Π»ΡΠ΄ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΊΡΠΏΠ°ΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΄Π°Π²Π°ΡΡ ΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π΄Π΅Π½ΡΠ³ΠΈ ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ
ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ.
Π‘Π°ΠΉΡ Amazon ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΠ½ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» Π½Π°Ρ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ ΠΊ ΠΏΠΎΠΊΡΠΏΠΊΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΄Π°ΠΆΠ΅ ΡΠΎΠ²Π°ΡΠΎΠ². ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡ Π΄Π»Ρ ΠΏΡΠΎΠ΄Π°ΠΆΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ΄Π°Π²Π°ΡΡ Π΅Π³ΠΎ Π½Π° eCommerce-ΡΠ°ΠΉΡΠ°Ρ
, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ
Amazon. ΠΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈ ΡΠ°ΠΌΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΡ Ρ ΠΏΠΎΡ
ΠΎΠΆΠΈΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΠΎΠΌ.
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ ΡΠΎΠ²Π°ΡΠΎΠ² Π΄Π»Ρ ΠΏΡΠΎΠ΄Π°ΠΆΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΡΠΎΡΡΠΎ Π΄Π»Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½-ΠΌΠ°Π³Π°Π·ΠΈΠ½ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠΆΠ΅ ΠΈΠΌΠ΅ΡΡΠΈΡ
ΡΡ Ρ Π²Π°Ρ Π½Π°Π²ΡΠΊΠΎΠ² Django. ΠΡΠΎ Π±ΡΠ΄Π΅Ρ Ρ
ΠΎΡΠΎΡΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΡΠΈΡ Π²Π°Ρ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ Π²Π΅ΡΠ°ΠΌ.
ΠΡ Π½Π°ΡΠ»ΠΈ Π²ΠΈΠ΄Π΅ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΠ°ΠΉΡ. ΠΠΎΡΡΠ΅Π½ΠΈΡΡΠΉΡΠ΅ΡΡ ΡΠ΅ΠΉΡΠ°Ρ, Π° ΠΏΠΎΡΠΎΠΌ Π·Π°ΡΠ°Π±Π°ΡΡΠ²Π°ΠΉΡΠ΅ Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅ (ΠΈΠ»ΠΈ Π½Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠ°ΠΊΠΈΡ
ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΎΠ² Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ
Π»ΡΠ΄Π΅ΠΉ).
9. Π‘ΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ Π½Π° Django
ΠΡΠ΅ ΠΌΡ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠ΅ΡΡΠΌΠΈ, Π²Π΅ΡΠ½ΠΎ? Π Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΡΠ°ΠΉΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Instagram, YouTube, Pinterest ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Python ΠΈ Django?
ΠΡ ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΡ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ° Django. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½Π°Ρ ΠΈΠ΄Π΅Ρ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ, ΠΏΡΠΎΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΎΠΆΠ΅Ρ, ΠΎΠ½ΠΎ ΡΡΠ°Π½Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ Instagram ΠΈΠ»ΠΈ Facebook, ΠΊΡΠΎ Π·Π½Π°Π΅Ρ?
ΠΡΠ΄Π΅Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡ Π΄Π»Ρ ΡΠ΅Π±Ρ ΠΈ ΡΠ²ΠΎΠΈΡ
Π΄ΡΡΠ·Π΅ΠΉ, ΡΡΠΎΠ±Ρ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠΈΠ³ΡΠ°ΡΡΡΡ Ρ Π½Π΅ΠΉ. Π’ΠΎΠ³Π΄Π° ΠΏΠΎ Ρ
ΠΎΠ΄Ρ Π΄Π΅Π»Π° Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΈΡΠ»ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΊ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ Π΄ΡΡΠ·Π΅ΠΉ ΠΈ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΎΡΠ»ΠΈΡΠ½ΠΎ Π»ΡΠΆΠ΅Ρ Π² Π²Π°ΡΠ΅ ΠΏΠΎΡΡΡΠΎΠ»ΠΈΠΎ. ΠΠ°Π΄Π΅Π΅ΠΌΡΡ, ΡΡΠΎΡ Π²ΠΈΠ΄Π΅ΠΎΡΡΡΠΎΡΠΈΠ°Π» ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠΎΡΡΠ΅ΡΡ.
10. Π‘Π°ΠΉΡ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π° Django
ΠΠ° ΡΠ°ΠΉΡΠ΅ Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΠ΄ΠΏΠΈΡΠΎΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°ΡΡΡΡ Π½Π° Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ ΠΊΠ°Π½Π°Π»Ρ, Π·Π°ΠΏΠ»Π°ΡΠΈΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠΌΠΌΡ, β ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π½Π° NetFlix. Django ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°.
ΠΡΠΏΠΎΠ»Π½ΡΡ ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ API, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΠ»Π°ΡΠ΅ΠΆΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅.
ΠΡ Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠ»Π°ΡΠ΅ΠΆΠ½ΡΠΉ ΡΠ»ΡΠ·, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Stripe, ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ Π·Π°ΠΊΠ°Π·Π°, Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΏΠ΅ΡΠΈΠΎΠ΄Ρ ΠΎΠΏΠ»Π°ΡΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ Stripe, ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΏΠ»Π°ΡΠ΅ΠΆΠΈ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ, ΠΎΡΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ ΠΈ Ρ.Π΄.
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΡ Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠ°ΠΌΠΈ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Django, Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡΡ ΡΡΠΎ Π²ΠΈΠ΄Π΅ΠΎ.
11. ΠΠ½Π»Π°ΠΉΠ½-ΡΠΊΠΎΠ»Π° Π½Π° Django
Π ΡΡΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½-ΡΠΊΠΎΠ»Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠΈΡΠ΅Π»Ρ ΡΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π·Π°Π΄Π°Π½ΠΈΡ, Π° ΡΡΠ°ΡΠΈΠ΅ΡΡ β Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΈΡ
ΠΈ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ. ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ Π½Π°Π²ΡΠΊΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Django.
ΠΡΠΏΠΎΠ»Π½ΠΈΠ² ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ, Π²Ρ Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Django Rest Framework ΠΈ React. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎ ΡΡΡΡΠΊΡΡΡΠ΅ Rest Django, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΠΎΠ΅-ΡΡΠΎ ΠΎ React.
Π’Π°ΠΊΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠ»ΡΡΡΠΈΡ Π²Π°ΡΠΈ Π½Π°Π²ΡΠΊΠΈ ΠΈ frontend-, ΠΈ backend-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΡΠ°ΡΡ fullstack Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ Django, ΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ Π²Π°ΠΌ Π·Π°Π½ΡΡΡΡΡ ΡΡΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΠ»Π΅ΠΉΠ»ΠΈΡΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π² ΡΠ°Π±ΠΎΡΠ΅.
12. Π Π°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ
Π²Π°ΠΌΠΈ ΡΠ°ΠΉΡΠΎΠ²
ΠΠΎΡΡΠ°Π²ΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅ΠΌ Π½Π° Π²Π΅Π±-Ρ
ΠΎΡΡΠΈΠ½Π³Π΅. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅, ΡΡΠΎΠ±Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠ³ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π²Π°ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ.
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ
ΡΠ΅Π»Π΅ΠΉ, Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ Π²Π°ΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΡ
Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌΠΈ Π΄Π»Ρ Π²ΡΠ΅Ρ
.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ ΠΏΡΠΈ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΡΡΡΠΎΠ»ΠΈΠΎ Π²Ρ ΡΠΌΠΎΠΆ[...] | 5 |
