Django ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ: Π’ΠΎΠΏ ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΡƒ Django / Π‘Π»ΠΎΠ³ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Mail.ru Group / Π₯Π°Π±Ρ€

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π’ΠΎΠΏ ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΡƒ Django / Π‘Π»ΠΎΠ³ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Mail.ru Group / Π₯Π°Π±Ρ€

Π’Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Django ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ сайтС: Ρ‚Π°ΠΌ ΠΈ тСория, ΠΈ справочная информация, ΠΈ руководства для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ². Однако, нСсмотря Π½Π° качСство, Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ всСм Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ эта докумСнтация приходится ΠΏΠΎ Π΄ΡƒΡˆΠ΅. Π§Ρ‚ΠΎ ΠΆ, Ρƒ вас Π΅ΡΡ‚ΡŒ Π΄Π²Π° ΠΏΡƒΡ‚ΠΈ. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ β€” Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Π½Π° ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅ курсы. Π’Ρ‚ΠΎΡ€ΠΎΠΉ β€” Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Ρ€Π°Π· Π·Π°Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΏΠΎΠ»ΠΊΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΎΠ². Π­Ρ‚ΠΈΠΌ ΠΌΡ‹ сСгодня с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ GeekBrains ΠΈ займёмся.

Django. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° Python β€” Π”ΠΆΠ΅Ρ„Ρ„ Π€ΠΎΡ€ΡΡŒΠ΅, Пол БиссСкс, Уэсли Π”ΠΆ. Π§Π°Π½

Π’Ρ‹ Π½Π΅ Π½Π°ΠΉΠ΄Ρ‘Ρ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ΠΏΠΎ Django Π½Π° русском языкС, ΠΈ это Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ²ΠΎΠ΄ ΠΏΡ€ΠΈΡΡ‚Π°Π»ΡŒΠ½Π΅Π΅ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ руководство. Но Ρ€Π°Π· ΡƒΠΆ ΠΌΡ‹ Π·Π°Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ ΠΎ ΠΊΠ½ΠΈΠ³Π°Ρ…, Π²ΠΎΡ‚ ΠΎΠ΄Π½Π° ΠΈΠ· самых популярных.

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Django ΠΈ Π΅Π³ΠΎ возмоТностях Π² этой ΠΊΠ½ΠΈΠ³Π΅ порядком устарСла (Π΅ΠΉ ΡƒΠΆΠ΅ 10 Π»Π΅Ρ‚), Π½ΠΎ для Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ знакомства со срСдой ΠΎΠ½Π° Π΅Ρ‰Ρ‘ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Π°. Книга написана Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ языком, ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Π° ΠΏΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒ, здСсь Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ ΠΊΠΎΠ΄Π° ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΡ‘ΠΌΠΎΠ² ΠΏΠΎ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ сайта. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ Π² качСствС Π±Π°Π·Ρ‹, Π½ΠΎ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ придётся приобрСсти Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅.

Django: ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° создания Web-сайтов Π½Π° Python β€” Π’Π»Π°Π΄ΠΈΠΌΠΈΡ€ Π”Ρ€ΠΎΠ½ΠΎΠ²

Вторая ΠΏΠΎ популярности Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ… ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ Django Π½Π° русском языкС. Как ΠΈ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ случаС, здСсь ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ΅ΠΉ вСрсиСй Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΈ, соотвСтствСнно, возмоТностями. Π•Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ минус – отсутствиС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ излоТСния. АкцСнт сдСлан Π½Π΅ Π½Π° ΠΏΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡ‰Π΅Ρ‚ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ, Π° Π½Π° Β«ΡƒΠ·ΠΊΠΈΠ΅Β» мСста Π² создании сайта (ΠΏΠΎ мнСнию Π°Π²Ρ‚ΠΎΡ€Π°). Π’ ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ ΠΊΠ½ΠΈΠ³Π° для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΡƒΠΆΠ΅ усвоил Π°Π·Ρ‹, Π½ΠΎ Π΅Ρ‰Ρ‘ Π½Π΅ стал профСссионалом.

REST APIs with Django: Build powerful web APIs with Python and Django β€” William S. Vincent

ΠžΡ‚ Ρ€Ρ‹Π½ΠΊΠ° российского ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘ΠΌ ΠΊ Π·Π°ΠΏΠ°Π΄Π½ΠΎΠΌΡƒ, Ρ‚Π°ΠΌ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹, ΠΏΡ€ΠΈΡ‡Ρ‘ΠΌ качСствСнной, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ большС. ΠŸΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΊΠ½ΠΈΠ³ для изучСния Django, Π² частности, ΠΏΡ€ΠΈ создании Π²Π΅Π±-API. НСсмотря Π½Π° ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ малСнький ΠΎΠ±ΡŠΡ‘ΠΌ (ΠΌΠ΅Π½Π΅Π΅ 200 страниц), здСсь ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описан процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΡ‚ ΠΎΠ±Ρ‰Π΅ΠΉ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ Π²Π΅Π±-интСрфСйсов Π΄ΠΎ схСм ΠΈ оформлСния Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

Test-Driven Development with Python: Obey the Testing Goat: Using Django, Selenium, and JavaScript β€” Harry J. W. Percival

Богласно Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ, ΠΏΡ€ΠΈ Π°Π²Ρ‚ΠΎΡ€ Ρ…ΠΎΡ‚Π΅Π» ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ сСбС ΠΌΠΎΠ»ΠΎΠ΄ΠΎΠΌΡƒ всС Ρ‚Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ инструмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ сСгодня. И, Π² Ρ†Π΅Π»ΠΎΠΌ, Π΅ΠΌΡƒ это ΡƒΠ΄Π°Π»ΠΎΡΡŒ. Но стоит ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Django ΠΈ Python β€” лишь ΠΎΠ΄Π½Π° ΠΈΠ· «остановок» Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, поэтому Π² качСствС Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ руководства ΠΊΠ½ΠΈΠ³Π° Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚. Π—Π°Ρ‚ΠΎ Ссли Ρƒ вас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π½Π°Π²Ρ‹ΠΊΠΈ Π² области Π²Π΅Π±Π°, Π½ΠΎ хочСтся Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Ρ… Π·Π½Π°Π½ΠΈΠΉ, эта ΠΊΠ½ΠΈΠ³Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π°.

Django for Beginners: Build websites with Python and Django β€” William S. Vincent

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΎΡ‚Π·Ρ‹Π²ΠΎΠ², написанных Π½Π° эту ΠΊΠ½ΠΈΠ³Ρƒ Π½Π° сайтС Amazon, Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ это ΠΏΠΎΡ‡Ρ‚ΠΈ идСальная Π·Π°ΠΌΠ΅Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ руководству. Π’ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сущСствСнных плюсов здСсь Π΄Π²Π°:

  1. ВсС дСйствия ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·ΠΆΡ‘Π²Π°Π½Ρ‹, поэтому Ρƒ читатСля Π½Π΅ остаётся вопросов: Β«ΠŸΠΎΡ‡Π΅ΠΌΡƒ здСсь Ρ‚Π°ΠΊ?Β»
  2. Если Π΄Π°ΠΆΠ΅ Π²Π°ΠΌ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ нСпонятно, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠ»Π°Ρ‚ΡŒ свой вопрос ΠΏΠΎ элСктронной ΠΏΠΎΡ‡Ρ‚Π΅. Говорят, Уильям ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ всСм.

Но Π½Π΅ стоит Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠ½ΠΈΠ³Π° для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², поэтому дальшС создания Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ сайта ΡƒΠΉΡ‚ΠΈ Π½Π΅ получится.

Two Scoops of Django 1.11: Best Practices for the Django Web Framework β€” Daniel Roy Greenfeld

Π­Ρ‚ΠΎ Ρ‡Π΅Ρ‚Π²Ρ‘Ρ€Ρ‚ΠΎΠ΅ ΠΏΠ΅Ρ€Π΅ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅, ΠΊΠ°ΠΊ ΠΈ всС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅, собрало мноТСство ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΡ‚Π·Ρ‹Π²ΠΎΠ². Π’ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, это ΠΎΠ΄Π½Π° ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ½ΠΈΠ³, посвящённых ΠΈΠΌΠ΅Π½Π½ΠΎ Django. Π—Π΄Π΅ΡΡŒ Π²Ρ‹ Π½Π°ΠΉΠ΄Ρ‘Ρ‚Π΅ всё, ΠΎΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ стиля ΠΊΠΎΠ΄Π° Π΄ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ³ΠΎ описания всСх нСдостатков Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°. Π’Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ со всСми 35 Π³Π»Π°Π²Π°ΠΌΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ всС практичСскиС задания β€” ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ сСбя Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΌ спСциалистом.

Mastering Python: Machine Learning, Data Structures, Django, Object Oriented Programming and Software Engineering β€” Michael B. White

Π’ противовСс ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΠΊΠ½ΠΈΠ³Π΅, эта прСдставляСт собой достаточно ΠΎΠ±Ρ‰Π΅Π΅ руководство ΠΏΠΎ Python ΠΈ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ с Π½ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ. Django ΠΈ Π²Π΅Π± здСсь Π½Π΅ основныС Ρ‚Π΅ΠΌΡ‹, Π½ΠΎ, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠΌ удСляСтся наибольшСС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. Книга ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ Python (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это достаточно Π»Π΅Π³ΠΊΠΎ), Π½ΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ Π·Π½Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ с Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ. Β«Mastering Python…» ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ.

Django Unleashed β€” Andrew Pinkham

Π•Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠ΅ ΠΏΠΎΠ΄ΡΠΏΠΎΡ€ΡŒΠ΅, ΡƒΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ Π² 800 страниц ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠ³ΠΎ тСкста. По ΡΡ‚ΠΈΠ»ΡŽ ΠΏΠΎΠ΄Π°Ρ‡ΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°, ΠΏΠΎ Ρ‚ΠΎΠΌΡƒ, с ΠΊΠ°ΠΊΠΎΠΉ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ Π°Π²Ρ‚ΠΎΡ€ двиТСтся ΠΏΠΎ Ρ†ΠΈΠΊΠ»Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Β«Django UnleashedΒ» β€” это ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹ΠΉ пСрСсказ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠ½ΠΈΠ³Π° идСально ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒΡΡ ΠΏΠΎ «экранной» Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π΅, ΠΈΠ»ΠΈ Ρ‚Π΅ΠΌ, ΠΊΠΎΠΌΡƒ Π½ΡƒΠΆΠ΅Π½ физичСский справочник ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ.

Build your first website with Django 2.1: Master the basics of Django while building a fully-functioning β€” Nigel George

Книга описываСт вСсь Ρ†ΠΈΠΊΠ» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с использованиСм Django, Π° Ρ‚Π°ΠΊΠΆΠ΅ рассказываСт ΠΎ Π³Ρ€Π°ΠΌΠΎΡ‚Π½ΠΎΠΌ создании Π²Π΅Π±-рСсурсов Π² Ρ†Π΅Π»ΠΎΠΌ. Π£ Π½Π΅Ρ‘ Π΅ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π° нСдостатков: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ нСбольшоС количСство ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Π²ΠΎ всяком случаС, для руководства, ΠΈ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠΉ вСрсии Python. ПослСднСС понятно ΠΈ ΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ отсутствиС «эталонного» ΠΊΠΎΠ΄Π° для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… дСйствий ΠΏΠΎΠ½ΡΡ‚ΡŒ слоТно.

Как ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ Π½Π΅ Ρ‚Π°ΠΊ ΡƒΠΆ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠ½ΠΈΠ³Π°Ρ… Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Π½ΠΎ, Π² Ρ†Π΅Π»ΠΎΠΌ, ΠΏΠΎΡ‡Ρ‚ΠΈ всС ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ пособия, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π²Π½Π΅ доступа ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ.

А ΠΊΠ°ΠΊ Π²Ρ‹ ΠΈΠ·ΡƒΡ‡Π°Π»ΠΈ Django?

ДокумСнтация Django 3.0 Π½Π° русском языкС | ДокумСнтация Django 3.0

Всё, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΎ Django.

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΌΠΎΡ‰ΠΈΒΆ

Π•ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹? ΠœΡ‹ с Ρ€Π°Π΄ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠΌΠΎΠΆΠ΅ΠΌ!

Как ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π° докумСнтация¢

Π£ Django большой объСм Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. ΠžΠ±Ρ‰ΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π°, ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡƒΠ·Π½Π°Ρ‚ΡŒ, Π³Π΄Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅:

  • Π£Ρ‡Π΅Π±Π½ΠΈΠΊΠΈ. ΠŸΡ€ΠΎΠΉΠ΄ΠΈΡ‚Π΅ ΡΠ΅Ρ€ΠΈΡŽ шагов ΠΏΠΎ созданию Π²Π΅Π±-прилоТСния. НачнитС с Π½ΠΈΡ…, Ссли Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² Django ΠΈΠ»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’Π°ΠΊΠΆΠ΅ посмотритС Β«ΠŸΠ΅Ρ€Π²Ρ‹Π΅ шаги» Π½ΠΈΠΆΠ΅.
  • Руководства ΠΎΠ±ΡŠΡΡΠ½ΡΡŽΡ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹ ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Π½Π° достаточно высоком ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ ΡΠΏΡ€Π°Π²ΠΎΡ‡Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ пояснСния.
  • Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½Ρ‹Π΅ руководства содСрТат Ρ‚Π΅Ρ…Π½ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ API ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ аспСктам Ρ€Π°Π±ΠΎΡ‚Ρ‹ Django. Они ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚, ΠΊΠ°ΠΊ всё Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ ΠΊΠ°ΠΊ это ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Ρƒ вас Π΅ΡΡ‚ΡŒ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… понятий.
  • ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ руководства ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ€Π΅Ρ†Π΅ΠΏΡ‚Π°ΠΌΠΈ. Они ΠΏΡ€ΠΎΠ²Π΅Π΄ΡƒΡ‚ вас Ρ‡Π΅Ρ€Π΅Π· шаги, связанныС с Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² использования Django. Они Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹, Ρ‡Π΅ΠΌ ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ пособия, ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ Django Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

ΠŸΠ΅Ρ€Π²Ρ‹Π΅ шаги¢

Новичок Π² Django ΠΈΠ»ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ? НачнитС ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ΡΡŽΠ΄Π°!

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈΒΆ

Django прСдоставляСт свой ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ абстракции (Β«ΠΌΠΎΠ΄Π΅Π»ΠΈΒ») для структурирования ΠΈ управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ вашСго Π²Π΅Π±-прилоТСния. Π£Π·Π½Π°ΠΉΡ‚Π΅ большС ΠΎΠ± этом Π½ΠΈΠΆΠ΅:

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡΒΆ

Django has the concept of Β«viewsΒ» to encapsulate the logic responsible for
processing a user’s request and for returning the response. Find all you need
to know about views via the links below:

The template layerΒΆ

The template layer provides a designer-friendly syntax for rendering the
information to be presented to the user. Learn how this syntax can be used by
designers and how it can be extended by programmers:

FormsΒΆ

Django provides a rich framework to facilitate the creation of forms and the
manipulation of form data.

The development processΒΆ

Learn about the various components and tools to help you in the development and
testing of Django applications:

The adminΒΆ

Find all you need to know about the automated admin interface, one of Django’s
most popular features:

Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΒΆ

Security is a topic of paramount importance in the development of Web
applications and Django provides multiple protection tools and mechanisms:

Internationalization and localizationΒΆ

Django offers a robust internationalization and localization framework to
assist you in the development of applications for multiple languages and world
regions:

Performance and optimizationΒΆ

There are a variety of techniques and tools that can help get your code running
more efficiently — faster, and using fewer system resources.

Geographic frameworkΒΆ

GeoDjango intends to be a world-class geographic
Web framework. Its goal is to make it as easy as possible to build GIS Web
applications and harness the power of spatially enabled data.

Other core functionalitiesΒΆ

Learn about some other core functionalities of the Django framework:

Django β€” ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌΒΆ

Learn about the development process for the Django project itself and about how
you can contribute:

Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Π’ ΡΡ‚ΠΎΠΉΒ ΡΡ‚Π°Ρ‚ΡŒΠ΅Β ΠΌΡ‹ обсудим Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django. Они ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΠΊΠ°ΠΊ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ, Ρ‚Π°ΠΊ ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌ эту ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ.Β Django – это основной Π²Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ языка Python, написанный Π½Π° Python.Β  ΠŸΡ€ΠΈ использовании Π΅Π³ΠΎ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ созданиС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ мСньшС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π˜Ρ‚Π°ΠΊ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ для изучСния Django.Β  Π‘ любой ΠΈΠ· этих ΠΊΠ½ΠΈΠ³ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠΉ старт. Они ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для облСгчСния вашСго ΠΏΡƒΡ‚ΠΈ Π² Π²Π΅Π±-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ с использованиСм этого Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°.

Two scoops of Django for 1.11

ДэниСл Π“Ρ€ΠΈΠ½Ρ„Π΅Π»ΡŒΠ΄ ΠΈ ΠžΠ΄Ρ€ΠΈ Π“Ρ€ΠΈΠ½Ρ„ΠΈΠ»Π΄

ΠΊΠ½ΠΈΠ³ΠΈ, Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ Django – ΡˆΠ²Π΅ΠΉΡ†Π°Ρ€ΡΠΊΠΈΠΉ армСйский Π½ΠΎΠΆ для всСх Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Π’ Π½Π΅ΠΉ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ использования Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Книга ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ваш ΠΊΠΎΠ΄ ΠΈ структуру ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Она ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ аспСкты ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. А Π΅Ρ‰Π΅ – ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ программисту Π² создании Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

Π•Π΅ Π»Π΅Π³ΠΊΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ, ΠΎΠ½Π° прямо ΠΏΡ€ΠΎΠΏΠΈΡ‚Π°Π½Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π°ΠΆΠ½Π° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ, ΠΊΡ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Django, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉ, срСдний ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΉ программист.

ΠšΠ½ΠΈΠ³Ρƒ Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Π² нашСм Telegram-ΠΊΠ°Π½Π°Π»Π΅ ΠΏΠΎ этой ссылкС.

Lightweight Django

Эльман ΠΈ ΠœΠ°Ρ€ΠΊ Π›Π°Π²ΠΈΠ½

ΠΊΠ½ΠΈΠ³ΠΈ, Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° позволяСт ΠΏΠΎ-Π½ΠΎΠ²ΠΎΠΌΡƒ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° использованиС Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Django.  Она ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ REST API, WebSockets ΠΈ клиСнтскиС MVC-инфраструктуры, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Backbone.js, Π² Π½ΠΎΠ²Ρ‹Ρ… ΠΈΠ»ΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…. Книга ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ Django ΠΈ создании ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

ПослСдниС нСсколько Π³Π»Π°Π² этой ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ±ΡŠΡΡΠ½ΡΡŽΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° сайтах, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… Tornado.Β Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Django, ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹ Ρ‚ΠΎΠΆΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ раскрыты.

High Performance Django

ΠŸΠΈΡ‚Π΅Ρ€ Π‘Π°ΡƒΠΌΠ³Π°Ρ€Ρ‚Π½Π΅Ρ€ ΠΈ Π―Π½Π½ ΠœΠ°Π»Π΅Ρ‚

ΠΊΠ½ΠΈΠ³ΠΈ, Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Π­Ρ‚ΠΎ довольно короткая, Π½ΠΎ точная ΠΊΠ½ΠΈΠ³Π° Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… подробностСй. Она рассказываСт ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ тяТСлых ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с использованиСм Django.Β Π’ Π½Π΅ΠΉ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠΌ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ процСссы ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

Π•ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ говорят ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ½ΠΈΠ³Π° High Performance Django достойна прочтСния.Β Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² Π½Π΅ΠΉ инструмСнтов, ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ исходный ΠΊΠΎΠ΄, Π° Π·Π½Π°Ρ‡ΠΈΡ‚, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ свободно ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Django Unleashed

Π­Π½Π΄Ρ€ΡŽ ΠŸΠΈΠ½ΠΊΡ…Π΅ΠΌ

ΠΊΠ½ΠΈΠ³ΠΈ, Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Django Unleashed – пошаговоС руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ возмоТности Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΈ Π΅Π³ΠΎ ΠΌΠΎΡ‰Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ. Оно ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ особСнности ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ прСдоставляСт практичСскиС знания ΠΎΠ± этом ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°Ρ….

Книга ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ Ρ‚Π΅ΠΌΡ‹, ΠΊΠ°ΠΊ созданиС HTML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ шаблонов, Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° MVC, использованиС шаблонов ΠΈ прСдставлСний URL для создания динамичСских Π²Π΅Π±-страниц, устранСниС Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΎΠΊ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, Π·Π°Ρ‰ΠΈΡ‚Π° своСго сайта с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ‚. Π΄. Π­Ρ‚ΠΎ ΠΊΠ½ΠΈΠ³Π° Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ ΠΎΡ‡Π΅Π½ΡŒ Ρ‡Π΅Ρ‚ΠΊΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Django.

Mastering Django: Core – The Complete Guide to Django 1.8 LTS

НайдТСл Π”ΠΆΠΎΡ€Π΄ΠΆ

ΠΊΠ½ΠΈΠ³ΠΈ, Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Автор ΠΎΡ…Π²Π°Ρ‚ΠΈΠ» всС основныС аспСкты этого Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°. Он прСдоставляСт читатСлям ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± установкС Python ΠΈ Django ΠΈ рассматриваСт всС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΠΎΡ‚ основ Π΄ΠΎ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠ³ΠΎ уровня.Β Π­Ρ‚ΠΎ ΠΊΠ½ΠΈΠ³Π° быстро ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ, отвСчая Π½Π° вопросы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Ρƒ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² этом Π΄Π΅Π»Π΅.

Благодаря ΠΊΠ½ΠΈΠ³Π΅ Mastering Django Π²Ρ‹ смоТСтС ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ основы систСмы шаблонов, использованиС систСмы Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Django ΠΈ сайта администратора Π’Π°ΠΊΠΆΠ΅ эта ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π² ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ‹ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ· нашСго telegram-ΠΊΠ°Π½Π°Π»Π° ΠΏΠΎ этой ссылкС.

Test-Driven Development with Django

КСвин Π₯Π°Ρ€Π²ΠΈ

Если Π²Ρ‹ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π° Django, практичСски Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π·Π½Π°ΡŽΡ‰ΠΈΠΉ ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ‡Π΅Ρ€Π΅Π· тСстированиС (TDD) ΠΈ ΠΎ тСстировании Π² Ρ†Π΅Π»ΠΎΠΌ, ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ Π²Π°ΠΌ ΠΊΠ°ΠΊ нСльзя Π»ΡƒΡ‡ΡˆΠ΅. Π’ этой ΠΊΠ½ΠΈΠ³Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· тСстированиС рассматриваСтся Π² Ρ€Π°Π·Ρ€Π΅Π·Π΅ использования Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Django.

Автор раскрываСт Ρ‚Π°ΠΊΠΈΠ΅ Ρ‚Π΅ΠΌΡ‹ , ΠΊΠ°ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΌ тСстированиСм, использованиС RequestFactory ΠΈ TestClient Π² Django, тСстовая интСграция с внСшними API, использованиС Π΄Ρ€ΡƒΠ³ΠΈΡ… инструмСнтов, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ VCR, Django Rest Framework ΠΈ Ρ‚.Π΄.

Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ Django позволяСт Π»Π΅Π³ΠΊΠΎ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ слоТныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, помогая Ρ€Π°Π·Π±ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅.Β Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ тСстирования Π² Django ΠΈ Python Π΄Π΅Π»Π°ΡŽΡ‚ написаниС тСстовых Π·Π°Π΄Π°Π½ΠΈΠΉ ΡƒΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. А ΠΊΠΎΠ³Π΄Π° вСсь ΠΊΠΎΠ΄ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ тСстами, это ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для любого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

The Definitive Guide to Django: Web Development Done Right

Адриан Π“ΠΎΠ»ΠΎΠ²Π°Ρ‚Ρ‹ΠΉ ΠΈ Π―ΠΊΠΎΠ± Каплан-Мосс

ΠΊΠ½ΠΈΠ³ΠΈ, Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ Django прСдставляСт собой ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°ΡŽΡ‰Π΅Π΅ руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°. Авторы Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ основныС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Django, ΡƒΡ‡Π°Ρ‚ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ сам Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ± установкС, настройкС ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Из этой ΠΊΠ½ΠΈΠ³ΠΈ Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π²Ρ‹Π²ΠΎΠ΄ содСрТимого, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΎΡ‚ HTML (RSS-ΠΊΠ°Π½Π°Π»Ρ‹ ΠΈ PDF-Ρ„Π°ΠΉΠ»Ρ‹). Π’Π°ΠΊΠΆΠ΅ Π²Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ с Ρ‚Π΅ΠΌΠ°ΠΌΠΈ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ управлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ.

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π² The Definitive Guide to Django, Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ этого Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π²Π΅Π±-прилоТСния. Π’Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ с основами динамичСских Π²Π΅Π±-страниц, систСмой шаблонов, взаимодСйствии с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π²Π΅Π±-Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ.

Django for Beginners: Build websites with Python and Django

Уильям Π‘. ВинсСнт

ΠΊΠ½ΠΈΠ³ΠΈ, Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

Как слСдуСт ΠΈΠ· названия, эта ΠΊΠ½ΠΈΠ³Π° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΡ… ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Django ΠΈ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π² этой срСдС.

Она ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ Ρ‚Π΅ΠΌΡ‹, ΠΊΠ°ΠΊ основы Django, ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ ΠΈ URL-адрСса, прСдставлСния Π½Π° основС классов, аутСнтификация ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΈ тСстированиС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ основныС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹.

Из ΠΊΠ½ΠΈΠ³ΠΈ Django for beginners Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Hello World, Π±Π»ΠΎΠ³, доску объявлСний, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹, ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ записи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ‚. Π΄.

ΠšΠ½ΠΈΠ³Ρƒ Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Π² нашСм Telegram-ΠΊΠ°Π½Π°Π»Π΅ ΠΏΠΎ этой ссылкС.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Django, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости. ОписаниС ΠΊΠ½ΠΈΠ³ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, какая ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ½ΠΈΠ³Π° Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Π²Π°ΡˆΠΈΡ… Π½ΡƒΠΆΠ΄ ΠΈ вашСго уровня Π½Π°Π²Ρ‹ΠΊΠΎΠ². НадССмся, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ поиск ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Django для вас Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½.

ВОП-5 ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Django (Python) Π½Π° русском языкС – Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста

ΠŸΠΎΠ΄Π±ΠΎΡ€ΠΊΠ° ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Π²Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΡƒ Django Π½Π° русском языкС. Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠΈ ΠΈ справочники, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ стоит ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ.

Django. Адриан Π“ΠΎΠ»ΠΎΠ²Π°Ρ‚Ρ‹ΠΉ, Π”ΠΆΠ΅ΠΉΠΊΠΎΠ± Каплан-Мосс

Книга Django. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство

Благодаря своим инструмСнтам, Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ способСн ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ процСсс создания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² ΡƒΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ творчСскоС занятиС. Авторы ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ элСмСнты Django, Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, ΠΊΠ°ΠΊ с Π½ΠΈΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ эффСктивно ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π² Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

ИзданиС написано для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π°Π²Ρ‹ΠΊΠΈ программирования ΠΈ Π·Π½Π°ΠΊΠΎΠΌ с ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌΠΈ Python ΠΈ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ.

Достоинства:

  • ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ структурирована;
  • Ρ€Π°Π΄ΡƒΠ΅Ρ‚ достаточноС количСство Ρ‚Π΅ΠΎΡ€ΠΈΠΈ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²;
  • Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ качСство ΠΊΠ½ΠΈΠ³ΠΈ;
  • позволяСт ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Django Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ этапС, Π° Π² дальнСйшСм ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ, ΠΊΠ°ΠΊ справочник.

НСдостатки:

  • нСкачСствСнный ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄;
  • нСкоторая информация ΡƒΠΆΠ΅ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ°Ρ.

Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ Python. Π­Ρ€ΠΈΠΊ ΠœΡΡ‚ΠΈΠ·

Книга Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ Python. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ³Ρ€, визуализация Π΄Π°Π½Π½Ρ‹Ρ…, Π²Π΅Π±-прилоТСния

БСстсСллСр ΠΏΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ языка Python. Π’ Ρ…ΠΎΠ΄Π΅ чтСния ΠΊΠ½ΠΈΠ³ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ быстро Π΅Π³ΠΎ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ, ΠΈ научится ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, прилоТСния ΠΈ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ. Книга условно ΠΏΠΎΠ΄Π΅Π»Π΅Π½Π° Π½Π° 2 части. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ освСтлСн тСорСтичСский ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΠΎΠ± основных концСпциях, ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с чистым ΠΊΠΎΠ΄ΠΎΠΌ. Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части ΠΈΠ΄Π΅Ρ‚ ΡƒΠΆΠ΅ созданиС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Π½ΠΈΠΉ. ПослС прочтСния ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ΅ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π±Π°Π·Π΅ Django.

ИзданиС ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ².

Достоинства:

  • рассмотрСно нСсколько ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²: созданиС ΠΌΠΈΠ½ΠΈ-ΠΈΠ³Ρ€Ρ‹, Π²Π΅Π±-прилоТСния Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½ ΠΈ созданиС Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…;
  • Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ³ΠΎ описания основ Django;
  • написано понятным языком, ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ;
  • Π΅ΡΡ‚ΡŒ мноТСство ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ ΡƒΠΏΡ€Π°ΠΆΠ½Π΅Π½ΠΈΠΉ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³Π»Π°Π²Π΅;
  • Π±Π΅Π· Π²ΠΎΠ΄Ρ‹.

НСдостатки:

  • ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ программистам Π½ΠΎΠ²ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ здСсь Π½Π΅ Π½Π°ΠΉΡ‚ΠΈ;
  • мягкий ΠΏΠ΅Ρ€Π΅ΠΏΠ»Π΅Ρ‚, ΠΏΠ»ΠΎΡ…ΠΎΠ΅ качСство Π±ΡƒΠΌΠ°Π³ΠΈ ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ;
  • Π½ΡŽΠ°Π½ΡΡ‹ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° с английского языка.

Django. Уэсли Π§Π°Π½, Π”ΠΆΠ΅Ρ„Ρ„ Π€ΠΎΡ€ΡΡŒΠ΅, Пол БиссСкс

Книга Django. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° Python

ПолноС руководство начинаСтся с основ Django Π½Π° Python, Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ основныС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ способы ΠΈΡ… взаимодСйствия. Π”Π°Π»Π΅Π΅ ΡƒΠΆΠ΅ Π΄Π°ΡŽΡ‚ΡΡ практичСскиС знания: ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π±ΠΎΠ»Π΅Π΅ слоТныС Ρ‚Π΅ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ администрированиС ΠΈ тСстированиС сайтов.

Авторы дСлятся сСкрСтами использования Django, примСняя большоС количСство ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ объяснСний ΠΊ Π½ΠΈΠΌ.

Достоинства:

  • понятный ΡΡ‚ΠΈΠ»ΡŒ написания;
  • Π»Π΅Π³ΠΊΠΎ воспринимаСтся информация;
  • ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС Π±Π΅Π· Π²ΠΎΠ΄Ρ‹;
  • ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ для вСрсии Django 1,0 ΠΈΠ»ΠΈ 1,2.

НСдостатки:

  • ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Django: ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° создания Web-сайтов Π½Π° Python. Π’Π»Π°Π΄ΠΈΠΌΠΈΡ€ Π”Ρ€ΠΎΠ½ΠΎΠ²

Книга Django 2.1. ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° создания Π²Π΅Π±-сайтов Π½Π° Python

Книга создана для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Web-сайты ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Django. Π—Π΄Π΅ΡΡŒ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ процСссы создания ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, шаблонов, написаниС ΠΊΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ вопросы администрирования ΠΈ тСстирования сайтов.

Достоинства:

  • ΠΏΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹Π΅ инструкции ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π²Π΅Π±-сайтов;
  • адСкватная Ρ†Π΅Π½Π°.

НСдостатки:

  • слоТновато для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…;
  • ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ Π½Π°Π²Ρ‹ΠΊΠΈ программирования Π½Π° срСднСм ΡƒΡ€ΠΎΠ²Π½Π΅;
  • ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ°Ρ информация;
  • Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚ΠΈΠΊΠΈ.

Django 2 Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…. Антонио МСлС

Книга Django 2 Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…

Π’ ΠΊΠ½ΠΈΠ³Π΅, ΠΏΠΎΠΌΠΈΠΌΠΎ обучСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ с основными элСмСнтами Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‚Π΅ΠΌΡ‹ интСгрирования Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ сторонних инструмСнтов. Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… этой ΠΊΠ½ΠΈΠ³ΠΈ, Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ вСсь ΠΏΡƒΡ‚ΡŒ создания Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. А простота ΠΏΠΎΠ΄Π°Ρ‡ΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° Π΄Π΅Π»Π°Π΅Ρ‚ это руководство ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², ΠΈ для ΡƒΠΆΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Достоинства:

  • Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π² ΠΊΠ½ΠΈΠ³Π΅ Π΄Π°ΡŽΡ‚ ΠΏΡ€ΠΎΠΊΠ°Ρ‡Π°Ρ‚ΡŒ свои Π½Π°Π²Ρ‹ΠΊΠΈ;
  • понятный ΡΡ‚ΠΈΠ»ΡŒ ΠΏΠΎΠ΄Π°Ρ‡ΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°;
  • ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ·Π»Π°Π³Π°Π΅ΠΌΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

НСдостатки:

  • нСточности ΠΈ ошибки Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΊΠΎΠ΄Π°;
  • Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ прСдставлСния ΠΎ языкС Python.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

  1. Π›ΡƒΡ‡ΡˆΠ°Ρ ΠΊΠ½ΠΈΠ³Π° Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅Π³ΠΎ программиста для старта Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ Python ΠΈ Django – Β«Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ PythonΒ» Π­Ρ€ΠΈΠΊ ΠœΡΡ‚ΠΈΠ·.
  2. Π›ΡƒΡ‡ΡˆΠ΅Π΅ руководство для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π°Π²Ρ‹ΠΊΠΈ программирования – Β«DjangoΒ» Адриан Π“ΠΎΠ»ΠΎΠ²Π°Ρ‚Ρ‹ΠΉ, Π”ΠΆΠ΅ΠΉΠΊΠΎΠ± Каплан-Мосс.
  3. Β«Django 2 Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…Β» β€” ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌΡƒ ΠΊΡ€ΡƒΠ³Ρƒ Π°ΡƒΠ΄ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. ΠžΡ‚Π»ΠΈΡ‡Π½Π°Ρ ΠΊΠ½ΠΈΠ³Π° для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Django ΠΈ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹.

Π”Π΅Π»ΠΈΡ‚Π΅ΡΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌΠΈ ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ ΠΏΠΎ Django Π½Π΅ попавшими Π² эту ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΊΡƒ Π² коммСнтариях!

Π“Π»Π°Π²Π° 1: DjangoBook ΠΏΠΎ-русски | Django Π½Π° русском

Данная ΠΊΠ½ΠΈΠ³Π° посвящСна Django, срСдС[1]
WEB[2] Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, которая
позволяСт ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя ΠΈ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π²
Ρ€Π°Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Django, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ усилиями
ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ высококачСствСнныС прилоТСния.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° любого прилоТСния — это ΠΌΠ½ΠΎΠ³ΠΎΠ³Ρ€Π°Π½Π½Ρ‹ΠΉ процСсс. Π‘ΠΎ своСй Π»ΡƒΡ‡ΡˆΠ΅ΠΉ стороны — это творчСская Ρ€Π°Π±ΠΎΡ‚Π°, Π° с Ρ…ΡƒΠ΄ΡˆΠ΅ΠΉΒ β€” это Π½ΡƒΠ΄Π½ΠΎΠ΅ написаниС ΠΊΠΎΠ΄Π°. Django позволяСт ΡΡ„ΠΎΠΊΡƒΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° творчСской части Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, облСгчая Π΅Ρ‘ Π½ΡƒΠ΄Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ. Для этого Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ высокоуровнСвыС ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹, Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ для стандартных Π·Π°Π΄Π°Ρ‡ ΠΈ явныС соглашСния ΠΎ Ρ‚ΠΎΠΌ ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя Django стараСтся Π½Π΅ Π²ΠΌΠ΅ΡˆΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² ваш процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, позволяя Π²Π°ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π²Π½Π΅ своСй срСды.

ЦСль Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈΒ β€” ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ вас экспСртом ΠΏΠΎ Django. Книга
сфокусирована Π½Π° Π΄Π²ΡƒΡ… Π²Π΅Ρ‰Π°Ρ…. ΠŸΠ΅Ρ€Π²ΠΎΠ΅, ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ объясним, ΠΊΠ°ΠΊ
Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Django ΠΈ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния с Π΅Ρ‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ. Π’Ρ‚ΠΎΡ€ΠΎΠ΅,
Ρ‚Π°ΠΌ Π³Π΄Π΅ это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΌΡ‹ обсудим Π²Ρ‹ΡΠΎΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΡƒΡŽ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ,
отвСчая Π½Π° вопрос «Как я ΠΌΠΎΠ³Ρƒ эффСктивно ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ эти инструмСнты Π² своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…?Β» Читая эту ΠΊΠ½ΠΈΠ³Ρƒ, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅
Π½Π°Π²Ρ‹ΠΊΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΡ‰Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с простым
ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ?

Django являСтся Π²ΠΈΠ΄Π½Ρ‹ΠΌ прСдставитСлСм Π½ΠΎΠ²ΠΎΠ³ΠΎ поколСния
срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π½ΠΎ Ρ‡Ρ‚ΠΎ ΠΆΠ΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ
ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚ ΠΏΠΎΠ΄ этим Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠΌ?

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° этот вопрос Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим
Π΄ΠΈΠ·Π°ΠΉΠ½ прилоТСния написанного Π½Π° языкС Python Π±Π΅Π· использования срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. На протяТСнии всСй
ΠΊΠ½ΠΈΠ³ΠΈ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π²Π°ΠΌ
основныС способы Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π±Π΅Π·
Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… срСдств, Π² Π½Π°Π΄Π΅ΠΆΠ΄Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ€Π°Π·Π±Π΅Ρ€Ρ‘Ρ‚Π΅ΡΡŒ ΠΏΠΎΡ‡Π΅ΠΌΡƒ
эти срСдства Ρ‚Π°ΠΊ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹. Π’Π°ΠΊΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ
Π·Π°Π΄Π°Ρ‡Ρƒ Π½Π° Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ
(Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ срСдства) Π½Π΅ всСгда доступСн. И ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ Ρ‚ΠΎ,
Ρ‡Ρ‚ΠΎ Π·Π½Π°Π½ΠΈΠ΅ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ
Ρ‚Π°ΠΊ, Π° Π½Π΅ ΠΈΠ½Π°Ρ‡Π΅, Π΄Π΅Π»Π°Π΅Ρ‚ вас ΠΎΠΏΡ‹Ρ‚Π½Π΅Π΅.

Одним ΠΈΠ· простых, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ прямолинСйных способов ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ с нуля
Π²Π΅Π±ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° языкС Python являСтся использованиС стандарта
Common Gateway Interface (CGI), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» популярСн, начиная с
1998 Π³ΠΎΠ΄Π°. ΠšΡ€Π°Ρ‚ΠΊΠΎ рассмотрим ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚: создаётся скрипт
Π½Π° языкС Python, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ HTML, скрипт сохраняСтся Π½Π° Π²Π΅Π±
сСрвСрС Π² Ρ„Π°ΠΉΠ»Π΅ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .cgi, Π·Π°Ρ‚Π΅ΠΌ ΠΊ
скрипту ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π± Π±Ρ€Π°ΡƒΠ·Π΅Ρ€. Π’ΠΎΡ‚ ΠΈ всё.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½ простой CGI скрипт, написанный Π½Π° языкС Python,
ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π΄Π΅ΡΡΡ‚ΡŒ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ свСТих ΠΊΠ½ΠΈΠ³ ΠΈΠ· Π±Π°Π·Ρ‹
Π΄Π°Π½Π½Ρ‹Ρ…. НС Π±Π΅ΡΠΏΠΎΠΊΠΎΠΉΡ‚Π΅ΡΡŒ ΠΎ дСталях, просто рассмотритС ΠΊΠ°ΠΊ ΠΎΠ½
Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚:

#!/usr/bin/env python

import MySQLdb

print "Content-Type: text/html"
print
print "<html><head><title>Книги</title></head>"
print "<body>"
print "<h2>Книги</h2>"
print "<ul>"

connection = MySQLdb.connect(user='me', passwd='letmein', db='my_db')
cursor = connection.cursor()
cursor.execute("SELECT name FROM books ORDER BY pub_date DESC LIMIT 10")
for row in cursor.fetchall():
    print "<li>%s</li>" % row[0]

print "</ul>"
print "</body></html>"

connection.close()

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, согласно трСбованиям CGI, ΠΊΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ строку
Β«Content-TypeΒ», Π·Π°Ρ‚Π΅ΠΌ ΠΏΡƒΡΡ‚ΡƒΡŽ строку. Π‘ΠΊΡ€ΠΈΠΏΡ‚
Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ HTML Ρ‚Π΅Π³ΠΈ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ
выполняСт запрос для получСния ΠΈΠΌΡ‘Π½ послСдних дСсяти
ΠΊΠ½ΠΈΠ³. ΠžΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ запроса, скрипт создаёт
Π½Π΅Π½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ список ΠΈΠΌΡ‘Π½. НаконСц, скрипт Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ HTML Ρ‚Π΅Π³ΠΈ
ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ соСдинСниС с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ….

Для ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠΉ динамичСской страницы, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ этой, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ°
Β«Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ всё с нуля» Π½Π΅ всСгда ΠΏΠ»ΠΎΡ…Π°. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…,
этот ΠΊΠΎΠ΄ прост для понимания Π΄Π°ΠΆΠ΅ Π½Π΅ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ ΠΈ Π΅Π³ΠΎ
Π»Π΅Π³ΠΊΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π° Β«Π±ΠΎΠ΅Π²ΡƒΡŽΒ»[3] систСму — просто ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π²
Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .cgi ΠΈ Π·Π°ΠΉΠ΄ΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ.

Но нСсмотря Π½Π° свою простоту, Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ‚ ряд ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΈ
нСдостатков. Π—Π°Π΄Π°ΠΉΡ‚Π΅ сСбС эти вопросы:

  • Π§Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Ρ‘Ρ‚, Ссли потрСбуСтся ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ мноТСства ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² вашСго прилоТСния с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…? НСсомнСнно, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π±Π°Π·Π΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ скопирован Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ CGI скрипт. ΠŸΡ€ΠΈΠ΄Ρ‘Ρ‚ΡΡ вынСсти этот ΠΊΠΎΠ΄ Π² ΠΎΠ±Ρ‰ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

  • Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π΅
    строки Β«Content-TypeΒ» ΠΈ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ
    нСобходимости Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ соСдинСниС с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…? Π’Π°ΠΊΠΈΠ΅
    Π²Π΅Ρ‰ΠΈ ΡΠ½ΠΈΠΆΠ°ΡŽΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚
    Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ появлСния ошибок Π² ΠΊΠΎΠ΄Π΅. Π’Π°ΠΊΠΈΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ
    Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ нСкая общая инфраструктура.

  • Π§Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Ρ‘Ρ‚, Ссли этот ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π²ΠΎ мноТСствС срСд, каТдая со своСй Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π»ΠΎΠ³ΠΈΠ½ΠΎΠΌ? Π’ этом случаС потрСбуСтся Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ, ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΡ‡Π½ΡƒΡŽ для срСды исполнСния.

  • Π§Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Ρ‘Ρ‚, Ссли Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΡ‹Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° языкС Python, ΠΏΠΎΠΆΠ΅Π»Π°Π΅Ρ‚ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π²ΠΈΠ΄ страницы? Один Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ символ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡ€ΠΎΠ½ΠΈΡ‚ΡŒ Ρ†Π΅Π»ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’ ΠΈΠ΄Π΅Π°Π»Π΅, ΠΏΡ€ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ страницы, Π»ΠΎΠ³ΠΈΠΊΠ° страницы — ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΠΊΠ½ΠΈΠ³ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…Β β€” Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»Π΅Π½Π° ΠΎΡ‚ Π²Ρ‹Π²ΠΎΠ΄Π° HTML. Π’ этом случаС Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ измСнСния Π² HTML Π±Π΅Π· влияния Π½Π° всё ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅.

ΠŸΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠ°ΠΊ Ρ€Π°Π· Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ. Π‘Ρ€Π΅Π΄Π° прСдоставляСт инфраструктуру Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для Π²Π°ΡˆΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π²Ρ‹ ΠΆΠ΅ ΠΊΠΎΠ½Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ΡΡŒ Π½Π° создании явного, Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π±Π΅Π· нСобходимости ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚ΡŒ колСсо. Π’ΠΊΡ€Π°Ρ‚Ρ†Π΅, этим ΠΈ занимаСтся Django.

Django ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ Π§Π°ΡΡ‚ΡŒ 3: ИспользованиС ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ — Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

Β  Β  Β  Β  Β  Β  Β 

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ для LocalLibrary сайта. Она ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ модСль, ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ, ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· основных Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΠ»Π΅ΠΉ. Π’ Π½Π΅ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΡ€Π°Ρ‚ΠΊΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· основных способов доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ.

ΠžΠ±Π·ΠΎΡ€

Π’Π΅Π±-прилоТСния Django ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ доступ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Python, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ модСлями. МодСли ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ структуру Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ‚ΠΈΠΏΡ‹ ΠΏΠΎΠ»Π΅ΠΉ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΡ… ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€, значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ списка Π²Ρ‹Π±ΠΎΡ€Π°, тСкст справки для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, тСкст ΠΌΠ΅Ρ‚ΠΎΠΊ для Ρ„ΠΎΡ€ΠΌ ΠΈ Ρ‚. Π΄. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π΅ зависит ΠΎΡ‚ основной Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… — Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² вашСй настройки ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ ΠΊΠ°ΠΊΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½Π΅ΠΉ — Π²Ρ‹ просто ΠΏΠΈΡˆΠ΅Ρ‚Π΅ свою структуру ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ ΠΊΠΎΠ΄, Π° Django Π΄Π΅Π»Π°Π΅Ρ‚ всю Π³Ρ€ΡΠ·Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ, ΡΠ²ΡΠ·Π°Π½Π½ΡƒΡŽΒ Ρ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… Π·Π° вас.

Π’ этом ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ модСлям Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ LocalLibrary website.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ LocalLibrary

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π²Ρ‹ Π½Π°Ρ‡Π½Ρ‘Ρ‚Π΅Β ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ, стоит ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ нСсколько ΠΌΠΈΠ½ΡƒΡ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ, ΠΈ ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡΡ… ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ.

ΠœΡ‹ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠ½ΠΈΠ³Π°Ρ… (Π½Π°Π·Π²Π°Π½ΠΈΠ΅, Ρ€Π΅Π·ΡŽΠΌΠ΅, Π°Π²Ρ‚ΠΎΡ€, язык, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ написана ΠΊΠ½ΠΈΠ³Π°, катСгория, ISBN) ΠΈ Ρ‡Ρ‚ΠΎ Ρƒ нас ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько доступных экзСмпляров (с ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ, статусом доступности ΠΈ Ρ‚. Π”.). Нам ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± Π°Π²Ρ‚ΠΎΡ€Π΅, Ρ‡Π΅ΠΌ просто ΠΈΡ… имя, ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ. ΠœΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π° основС названия ΠΊΠ½ΠΈΠ³ΠΈ, Π°Π²Ρ‚ΠΎΡ€Π°, письмСнного языка ΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ.

ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π²Π°ΡˆΠΈΡ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Β«ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Β» (Π³Ρ€ΡƒΠΏΠΏΠ° связанной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ). Π’ этом случаС ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΊΠ½ΠΈΠ³ΠΈ, экзСмпляры ΠΊΠ½ΠΈΠ³ ΠΈ Π°Π²Ρ‚ΠΎΡ€Ρ‹.

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ для прСдставлСния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² списка Π²Ρ‹Π±ΠΎΡ€Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²), вмСсто Тёсткого кодирования Π²Ρ‹Π±ΠΎΡ€Π° Π½Π° самом Π²Π΅Π±-сайтС — это рСкомСндуСтся, ΠΊΠΎΠ³Π΄Π° всС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ нСизвСстны Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΈΠ»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ. ΠžΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Π΅ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Ρ‹ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² этом случаС Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ ΠΆΠ°Π½Ρ€ ΠΊΠ½ΠΈΠ³ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «Научная фантастика», «Ѐранцузская поэзия» ΠΈ Ρ‚. Π΄.) И язык (английский, французский, японский).

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΡ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈΡΡŒ с нашими модСлями ΠΈ полями, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎΠ± ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡΡ…. Django позволяСт Π²Π°ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊΒ ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ (OneToOneField), ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ (ForeignKey) ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ (ManyToManyField).

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ассоциации UML, привСдённая Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈ в этом случаС (Π² Π²ΠΈΠ΄Π΅ Π±Π»ΠΎΠΊΠΎΠ²). Как ΠΈ Π²Ρ‹ΡˆΠ΅, ΠΌΡ‹ создали ΠΌΠΎΠ΄Π΅Π»ΠΈ для ΠΊΠ½ΠΈΠ³ΠΈ (ΠΎΠ±Ρ‰ΠΈΠ΅ свСдСния ΠΎ ΠΊΠ½ΠΈΠ³Π΅), экзСмпляр ΠΊΠ½ΠΈΠ³ΠΈ (статус ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… физичСских ΠΊΠΎΠΏΠΈΠΉ ΠΊΠ½ΠΈΠ³ΠΈ, доступных Π² систСмС) ΠΈ Π°Π²Ρ‚ΠΎΡ€Π°.ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ модСль для ΠΆΠ°Π½Ρ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ / Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ значСния Ρ‡Π΅Ρ€Π΅Π· интСрфСйс администратора. ΠœΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ Π½Π΅ ΠΈΠΌΠ΅Ρ‚ΡŒ модСль для BookInstance: status — ΠΌΡ‹ ТСстко Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ значСния (LOAN_STATUS), ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌ ΠΈΡ… измСнСния. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ имя ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΈΠΌΠ΅Π½Π° ΠΈ Ρ‚ΠΈΠΏΡ‹ ΠΏΠΎΠ»Π΅ΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΠΈΡ… Ρ‚ΠΈΠΏΡ‹ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π°.

На Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ зависимости ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΈΡ… ΠΌΠ½ΠΎΠΆΠΈΡ‚Π΅Π»ΠΈ. ΠœΠ½ΠΎΠΆΠΈΡ‚Π΅Π»ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой числа Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΈ максимум Π΅Π΄ΠΈΠ½ΠΈΡ† ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² этой связи. НапримСр, ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ линия ΠΌΠ΅ΠΆΠ΄Ρƒ ящиками ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ½ΠΈΠ³Π° ΠΈ ΠΆΠ°Π½Ρ€ связаны ΠΌΠ΅ΠΆΠ΄Ρƒ собой. Π¦ΠΈΡ„Ρ€Ρ‹, Π±Π»ΠΈΠ·ΠΊΠΈΠ΅ ΠΊ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΆΠ°Π½Ρ€Π°, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Ρƒ ΠΊΠ½ΠΈΠ³ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько ΠΆΠ°Π½Ρ€ΠΎΠ² (сколько ΡƒΠ³ΠΎΠ΄Π½ΠΎ), Π° числа Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅ строки рядом с модСлью ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Ρƒ ΠΆΠ°Π½Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ноль ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ связанных ΠΊΠ½ΠΈΠ³.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΡΡΠ½ΡΡŽΡ‰ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ. Когда Π²Ρ‹ Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅, ΠΏΠΎΠ΄ΡƒΠΌΠ°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ ΠΌΡ‹ построим ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΠ· ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π²Ρ‹ΡˆΠ΅.

МодСль для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ прСдставлСн ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ опрСдСляСтся модСль, ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Ρ…Β ΠΏΠΎΠ»Π΅ΠΉΒ ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ поля.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ

МодСли ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ models.py. Они Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ подклассы django.db.models.Model, ΠΈΒ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ поля, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ ΠΊΠΎΠ΄Π° ΠΏΠΎΠΊΠ°Π·Π°Π½Π° «типичная» модСль, названная MyModelName:

from django.db import models

class MyModelName(models.Model):
Β  Β  """
Β  Β  A typical class defining a model, derived from the Model class.
Β  Β  """

Β    # Fields
Β  Β  my_field_name = models.CharField(max_length=20, help_text="Enter field documentation")
Β    ...

Β    # Metadata
    class Meta: 
Β        ordering = ["-my_field_name"]

Β    # Methods
Β  Β  def get_absolute_url(self):
 Β  Β  Β  Β  """
 Β  Β  Β  Β  Returns the url to access a particular instance of MyModelName.
 Β  Β  Β  Β  """
 Β  Β  Β  Β  return reverse('model-detail-view', args=[str(self.id)])
Β  Β Β 
Β  Β  def __str__(self):
Β  Β  Β  Β  """
Β  Β  Β  Β  String for representing the MyModelName object (in Admin site etc.)
Β  Β  Β  Β  """
Β  Β  Β  Β  return self.field_name

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрим ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ:

Поля

МодСль ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ количСство ΠΏΠΎΠ»Π΅ΠΉ любого Ρ‚ΠΈΠΏΠ° — ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ прСдставляСт столбСц Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π½Π°ΡˆΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ† Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. КаТдая запись (строка) Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ значСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ поля. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

my_field_name = models.CharField(max_length=20, help_text="Enter field documentation")

Наш Π²Ρ‹ΡˆΠ΅ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ»Π΅, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ my_field_name, Ρ‚ΠΈΠΏΠ°Β models.CharField β€” Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ это ΠΏΠΎΠ»Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ строки Π±ΡƒΠΊΠ²Π΅Π½Π½ΠΎ-Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… символов. Π’ΠΈΠΏΡ‹ ΠΏΠΎΠ»Π΅ΠΉ Π½Π°Π·Π½Π°Ρ‡Π°ΡŽΡ‚ΡΡ с использованиСм ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… классов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Ρ‚ΠΈΠΏ записи, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния Π΄Π°Π½Π½Ρ‹Ρ… Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, ΠΊΠΎΠ³Π΄Π° значСния ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹ HTML (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ составляСт Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅). Π’ΠΈΠΏΡ‹ ΠΏΠΎΠ»Π΅ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚, ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π΅ хранится ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ. Π’ этом случаС ΠΌΡ‹ Π΄Π°Π΅ΠΌ Π½Π°ΡˆΠ΅ΠΌΡƒ полю Π΄Π²Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°:

  • max_length=20 β€”Β Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ максимальная Π΄Π»ΠΈΠ½Π° значСния Π² этом ΠΏΠΎΠ»Π΅ составляСт 20 символов.
  • help_text="Enter field documentation" — прСдоставляСт Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΊΡƒ для отобраТСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π²Π²Π΅Π΄Π΅Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· HTML-Ρ„ΠΎΡ€ΠΌΡƒ.

Имя поля ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для обращСния ΠΊ Π½Π΅ΠΌΡƒ Π² запросах ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Π°Ρ….Β Π’ полях Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΊΠ°, которая задаСтся ΠΊΠ°ΠΊ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ (verbose_name), Π»ΠΈΠ±ΠΎ выводится ΠΏΡƒΡ‚Π΅ΠΌ Π·Π°Π³Π»Π°Π²Π½ΠΎΠΉ Π±ΡƒΠΊΠ²Ρ‹ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π±ΡƒΠΊΠ²Ρ‹ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ поля ΠΈ Π·Π°ΠΌΠ΅Π½Ρ‹ Π»ΡŽΠ±Ρ‹Ρ… символов подчСркивания ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, my_field_name Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΊΡƒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ My field name).

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ±ΡŠΡΠ²Π»ΡΡŽΡ‚ΡΡ поля, Π±ΡƒΠ΄Π΅Ρ‚ Π²Π»ΠΈΡΡ‚ΡŒ Π½Π° ΠΈΡ… порядок ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ссли модСль отобраТаСтся Π² Ρ„ΠΎΡ€ΠΌΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° сайтС администратора), хотя это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ.

ΠžΠ±Ρ‰ΠΈΠ΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ поля

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠ±Ρ‰ΠΈΠ΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ объявлСнии ΠΌΠ½ΠΎΠ³ΠΈΡ… / Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΠ»Π΅ΠΉ:

  • help_text: ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΊΡƒ для HTML-Ρ„ΠΎΡ€ΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° сайтС администратора), ΠΊΠ°ΠΊ описано Π²Ρ‹ΡˆΠ΅.
  • verbose_name:Β Π£Π΄ΠΎΠ±ΠΎ-Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠ΅ имя для поля, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π² ΠΏΠΎΠ»Π΅Β ΠΌΠ΅Ρ‚ΠΊΠΈ. Если Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Django Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚Β ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ поля.
  • default:Β Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для поля. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΈ Π² этом случаС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° создаСтся новая запись.
  • null: Если True, Django Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ пустыС значСния ΠΊΠ°ΠΊ NULL Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… для ΠΏΠΎΠ»Π΅ΠΉ, Π³Π΄Π΅ это умСстно (CharField вмСсто этого сохранит ΠΏΡƒΡΡ‚ΡƒΡŽ строку). По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ False.
  • blank: Если True, ΠΏΠΎΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ пустым Π² Π²Π°ΡˆΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ…. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ False, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ„ΠΎΡ€ΠΌΡ‹ Django заставит вас ввСсти Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ с null = True, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ пустыС значСния, Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠ³Π»Π° ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈΡ… ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.
  • choices:Β Π“Ρ€ΡƒΠΏΠΏΠ° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² для этого поля. Если это прСдусмотрСно, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅ΠΌ Π²Ρ‹Π±ΠΎΡ€Π° с этими Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ вмСсто стандартного тСкстового поля.
  • primary_key: Если True, Π·Π°Π΄Π°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ ΠΏΠΎΠ»Π΅ Π² качСствС ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° для ΠΌΠΎΠ΄Π΅Π»ΠΈ (ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ — это ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ столбСц Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ всСх Ρ€Π°Π·Π½Ρ‹Ρ… записСй Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹). Если Π² качСствС ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ ΠΏΠΎΠ»Π΅, Django автоматичСски Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ для этой Ρ†Π΅Π»ΠΈ ΠΏΠΎΠ»Π΅.

Π•ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² — Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ full list of field options here.

ΠžΠ±Ρ‰ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΠΎΠ»Π΅ΠΉ

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠ±Ρ‰ΠΈΠ΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ объявлСнии ΠΌΠ½ΠΎΠ³ΠΈΡ… / Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΠ»Π΅ΠΉ:

  • CharField Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для опрСдСлСния строк фиксированной Π΄Π»ΠΈΠ½Ρ‹ ΠΎΡ‚ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΉ Π΄ΠΎ срСднСй. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ max_length для хранСния Π΄Π°Π½Π½Ρ‹Ρ….
  • TextField ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… строк ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ max_length для поля, Π½ΠΎ это ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»Π΅ отобраТаСтся Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ… (ΠΎΠ½ΠΎ Π½Π΅ примСняСтся Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…).
  • IntegerField это ΠΏΠΎΠ»Π΅ для хранСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (Ρ†Π΅Π»ΠΎΠ³ΠΎ числа) ΠΈ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Π²ΠΈΠ΄Π΅ Ρ†Π΅Π»Ρ‹Ρ… чисСл Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ….
  • DateField ΠΈΒ DateTimeField ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для хранСния / прСдставлСния Π΄Π°Ρ‚ ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π΄Π°Ρ‚Π΅ / Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (ΠΊΠ°ΠΊ Python datetime.date ΠΈ datetime.datetime, соотвСтствСнно). Π­Ρ‚ΠΈ поля ΠΌΠΎΠ³ΡƒΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ (Π²Π·Π°ΠΈΠΌΠΎΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠ΅) ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ auto_now=True (для установки поля Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Π΄Π°Ρ‚Ρƒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° модСль сохраняСтся), auto_now_add (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для установки Π΄Π°Ρ‚Ρ‹, ΠΊΠΎΠ³Π΄Π° модСль Π±Ρ‹Π»Π° Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ создана) ΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Ρ‚Ρƒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ).
  • EmailField ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ адрСсов элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹.
  • FileField ΠΈ ImageField ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ соотвСтствСнно ( ImageField просто добавляСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ, Ρ‡Ρ‚ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» являСтся ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ). Они ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для опрСдСлСния Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈ Π³Π΄Π΅ хранятся Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹.
  • AutoField — это особый Ρ‚ΠΈΠΏ IntegerField, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ автоматичСски увСличиваСтся. ΠŸΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ этого Ρ‚ΠΈΠΏΠ° автоматичСски добавляСтся Π² Π²Π°ΡˆΡƒ модСль, Ссли Π²Ρ‹ явно Π½Π΅ ΡƒΠΊΠ°ΠΆΠ΅Ρ‚Π΅ Π΅Π³ΠΎ.
  • ForeignKey Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для указания ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Β«ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΒ» ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ производитСля, Π½ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ). «Одна» сторона ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ — это модСль, содСрТащая ΠΊΠ»ΡŽΡ‡.
  • ManyToManyField ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для опрСдСлСния ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Β«ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΒ» (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ½ΠΈΠ³Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько ΠΆΠ°Π½Ρ€ΠΎΠ², ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΆΠ°Π½Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ нСсколько ΠΊΠ½ΠΈΠ³). Π’ нашСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ для Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ ForeignKeys, Π½ΠΎ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТными способами для описания ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ. Они ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ on_delete, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ происходит, ΠΊΠΎΠ³Π΄Π° связанная запись удаляСтся (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ models.SET_NULL просто установило Π±Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ NULL)

БущСствуСт ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΠ»Π΅ΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ поля для Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² чисСл (большиС Ρ†Π΅Π»Ρ‹Π΅ числа, ΠΌΠ°Π»Ρ‹Π΅ Ρ†Π΅Π»Ρ‹Π΅ числа, Π΄Ρ€ΠΎΠ±Π½Ρ‹Π΅), логичСскиС значСния, URL-адрСса, slugs, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ «связанныС с Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌΒ» свСдСния (ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, врСмя ΠΈ Ρ‚. Π΄.).Β Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ full list here.

ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ для своСй ΠΌΠΎΠ΄Π΅Π»ΠΈ, объявив класс Meta, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС.

class Meta:
    ordering = ["-my_field_name"]
Β    ...

Одной ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ этих ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… являСтся ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сотрировкой записСй, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈ запросС Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это, указав соотвСтствия названия ΠΏΠΎΠ»Π΅ΠΉ для сортировки, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅. ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° поля (поля символов отсортированы Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎΠΌ порядкС, Π° поля Π΄Π°Ρ‚Ρ‹ отсортированы Π² хронологичСском порядкС). Как ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ прСфикс ΠΈΠΌΠ΅Π½ΠΈ поля минус-символом (-), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ порядок сортировки.

НапримСр, Ссли ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ:

ordering = ["title", "-pubdate"]

Книги Π±ΡƒΠ΄ΡƒΡ‚ отсортированы ΠΏΠΎ Π°Π»Ρ„Π°Π²ΠΈΡ‚Ρƒ ΠΏΠΎ названию, ΠΎΡ‚ A-Z, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎ Π΄Π°Ρ‚Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ названия, ΠΎΡ‚ самого Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΎ самого старого.

Π”Ρ€ΡƒΠ³ΠΈΠΌ распространСнным Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ являСтся verbose_name, ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ имя для класса Π² СдинствСнной ΠΈ мноТСствСнной Ρ„ΠΎΡ€ΠΌΠ΅:

verbose_name = "BetterName"

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Β«Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ доступа» для ΠΌΠΎΠ΄Π΅Π»ΠΈ (Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ автоматичСски), Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ упорядочСниС Π½Π° основС Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ поля ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ класс являСтся «абстрактным» (Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ записи, ΠΈ вмСсто этого Π±ΡƒΠ΄Π΅Ρ‚ создан для создания Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ). МногиС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ Ρ‚Π΅ΠΌ, какая Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ ΠΊΠ°ΠΊ хранятся Π΄Π°Π½Π½Ρ‹Π΅ (это Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Ссли Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ модСль с ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…). ΠŸΠΎΠ»Π½Ρ‹ΠΉ список ΠΎΠΏΡ†ΠΈΠΉ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… доступСн здСсь:Β Model metadata options (Django докумСнтация).

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹

МодСль Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Минимально Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ стандартный ΠΌΠ΅Ρ‚ΠΎΠ΄ класса для Python __str __ (), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡƒΡŽ строку для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π­Ρ‚Π° строка ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для прСдставлСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… записСй Π½Π° сайтС администрирования (ΠΈ Π² любом Π΄Ρ€ΡƒΠ³ΠΎΠΌ мСстС, Π³Π΄Π΅ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ экзСмпляру ΠΌΠΎΠ΄Π΅Π»ΠΈ). Часто это Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ»Π΅ названия ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½ΠΈ ΠΈΠ· ΠΌΠΎΠ΄Π΅Π»ΠΈ.

def __str__(self):
Β    return self.field_name

Π”Ρ€ΡƒΠ³ΠΈΠΌ распространСнным ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ Django являСтся get_absolute_url (), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ URL-адрСс для отобраТСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… записСй ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° Π²Π΅Π±-сайтС (Ссли Π²Ρ‹ опрСдСляСтС этот ΠΌΠ΅Ρ‚ΠΎΠ΄, Ρ‚ΠΎΠ³Π΄Π° Django автоматичСски Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Β ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π½Π° сайтС» Π½Π° экранах рСдактирования записСй ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° сайтС администратора). Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ шаблон для get_absolute_url () ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½ΠΈΠΆΠ΅.

def get_absolute_url(self):
    """
    Returns the url to access a particular instance of the model.
    """
    return reverse('model-detail-view', args=[str(self.id)])

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ URL-адрСса, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ / myapplication / mymodelname / 2, для отобраТСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… записСй для вашСй ΠΌΠΎΠ΄Π΅Π»ΠΈ (Π³Π΄Π΅ Β«2Β» — это ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ записи), Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ URL-ΠΊΠ°Ρ€Ρ‚Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Β«ΠžΠ±Ρ€Π°Π·Ρ†ΠΎΠ²ΠΎΠ΅ прСдставлСниС ΠΌΠΎΠ΄Π΅Π»ΠΈΒ» (ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ для отобраТСния записи). Π’Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½Π°Ρ функция reverse () ΠΌΠΎΠΆΠ΅Ρ‚ Β«ΠΏΠ΅Ρ€Π΅Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΒ» ваш URL-адрСс (Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«model-detail-viewΒ»), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ URL-адрСс ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°.

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, для выполнСния этой Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²Π°ΠΌ всС Ρ€Π°Π²Π½ΠΎ придСтся ΠΏΠΈΡΠ°Ρ‚ΡŒ сопоставлСниС URL-адрСс, просмотр ΠΈ шаблон!

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΌ нравятся, ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… ΠΈΠ· вашСго ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ шаблонов (ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²).

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ модСлью

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈ свои классы ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… для создания, обновлСния ΠΈΠ»ΠΈ удалСния записСй ΠΈ для запуска запросов для получСния всСх записСй ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… подмноТСств записСй. ΠœΡ‹ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π²Π°ΠΌ, ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π² ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ опрСдСляСм наши прСдставлСния, с ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΌ ΠΎΠ±Π·ΠΎΡ€ΠΎΠΌ.

БозданиС и измСнСниС записСй

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ запись, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ экзСмпляр ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ save ().

# Create a new record using the model's constructor.
a_record = MyModelName(my_field_name="Instance #1")

# Save the object into the database.
a_record.save()

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. Если Π²Ρ‹ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π»ΠΈ ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»Π΅ Π² качСствС primary_key, новая запись Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒΡΡ автоматичСски, с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΈΠΌΠ΅Π½ΠΈ поля. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ это ΠΏΠΎΠ»Π΅ послС сохранСния ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ записи, ΠΈ ΠΎΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ полям Π² этой Π½ΠΎΠ²ΠΎΠΉ записи с использованиСм синтаксиса Ρ‚ΠΎΡ‡Π΅ΠΊ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ значСния. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ save (), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ значСния Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

# Access model field values using Python attributes.
print(a_record.id) #should return 1 for the first record. 
print(a_record.my_field_name) # should print 'Instance #1'

# Change record by modifying the fields, then calling save().
a_record.my_field_name="New Instance Name"
a_record.save()
Поиск записСй

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ записи, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ критСриям, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠΎΠ΄Π΅Π»ΠΈ (прСдоставляСмый Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ классом).

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. ОбъяснСниС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΡΠΊΠ°Ρ‚ΡŒ записи, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Β«Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ‚Π½ΡƒΡŽΒ» модСль ΠΈ ΠΈΠΌΠ΅Π½Π° ΠΏΠΎΠ»Π΅ΠΉ, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡƒΡ‚Π°Π½Π½Ρ‹ΠΌ. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ обсуТдСнии ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° модСль ΠΊΠ½ΠΈΠ³ΠΈ с полями названия ΠΈ ΠΆΠ°Π½Ρ€Π°, Π³Π΄Π΅ ΠΆΠ°Π½Ρ€ Ρ‚Π°ΠΊΠΆΠ΅ являСтся модСлью с СдинствСнным ΠΈΠΌΠ΅Π½Π΅ΠΌ Π² ΠΏΠΎΠ»Π΅.

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ всС записи для ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ QuerySet,Β Β ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡΒ objects.all(). QuerySet — это ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰ΠΈΠΉ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ содСрТит нСсколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ / ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‡ΠΈΠ²Π°Ρ‚ΡŒ.

all_books = Book.objects.all()

ΠœΠ΅Ρ‚ΠΎΠ΄ filter () Django позволяСт ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ QuerySet для соотвСтствия ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ тСкстовому ΠΈΠ»ΠΈ числовому полю ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ критСриям. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³ΠΈ, содСрТащиС  слово Β«wildΒ» (Β«Π΄ΠΈΠΊΠΈΠ΅Β»)Β Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ΄ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΡ…, ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅.

wild_books = Book.objects.filter(title__contains='wild')
number_wild_books = Book.objects.filter(title__contains='wild').count()

Π‘ΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ поля ΠΈ Ρ‚ΠΈΠΏ соотвСтствия ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π² ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚: field_name__match_type (ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π΄Π²ΠΎΠΉΠ½ΠΎΠ΅ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌΒ Π²Ρ‹ΡˆΠ΅). Π’Ρ‹ΡˆΠ΅ ΠΌΡ‹ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅ΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ рСгистра. Π•ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² совпадСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ: icontains (Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° рСгистра), iexact (Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ совпадСниС бСз учСта рСгистра), exact (Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ совпадСниС с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ рСгистра ) ΠΈ Π², gt (большС), startswith ΠΈ Ρ‚. Π΄ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ список (Django Docs, [EN]).

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ опрСдСляСт ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Β«ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΒ» ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«ForeignKeyΒ»). Π’ этом случаС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Β«ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΒ» поля Π² связанной ΠΌΠΎΠ΄Π΅Π»ΠΈ с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌΠΈ подчСркиваниями. Π’Π°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³ΠΈ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΆΠ°Π½Ρ€ΠΎΠ²Ρ‹ΠΌ рисунком, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ имя Π² ΠΏΠΎΠ»Π΅ ΠΆΠ°Π½Ρ€Π°, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅:

books_containing_genre = Book.objects.filter(genre__name__icontains='fiction')  # Will match on: Fiction, Science fiction, non-fiction etc.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅:Β Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ символы подчСркивания (__) для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ уровням ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ (ForeignKey / ManyToManyField) ΠΏΠΎ своСму ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ. НапримСр, ΠΊΠ½ΠΈΠ³Π°, ΠΈΠΌΠ΅ΡŽΡ‰Π°Ρ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹, опрСдСляСмая с использованиСм Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ связи Β«ΠΎΠ±Π»ΠΎΠΆΠΊΠ°Β», ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ имя ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°: type__cover__name__exact = ‘hard’.

БущСствуСт Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС возмоТностСй для запросов, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ поиски ΠΎΡ‚ связанных ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ², Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ мСньшСго Π½Π°Π±ΠΎΡ€Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ Ρ‚. Π΄. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ см. Making queries (Django Docs, [EN]).

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ LocalLibrary

Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ Π½Π°Ρ‡Π½Π΅ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ для Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ models.py (Π² / locallibrary / catalog /). Π¨Π°Π±Π»ΠΎΠ½ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части страницы ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс модСли models.Model, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎΒ Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ΡΡ наши ΠΌΠΎΠ΄Π΅Π»ΠΈ.

from django.db import models

# Create your models here.

МодСль ΠΆΠ°Π½Ρ€Π°

Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π½ΠΈΠΆΠ΅ ΠΊΠΎΠ΄ ΠΌΠΎΠ΄Π΅Π»ΠΈ Genre ΠΈ Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π΅Π³ΠΎ Π² ниТнюю Ρ‡Π°ΡΡ‚ΡŒ вашСго Ρ„Π°ΠΉΠ»Π° models.py.Β Π­Ρ‚Π° модСль ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ ΠΊΠ½ΠΈΠ³ — Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ худоТСствСнная ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ, Ρ€ΠΎΠΌΠ°Π½ ΠΈΠ»ΠΈ Π²ΠΎΠ΅Π½Π½ΠΎ-историчСская ΠΈ Ρ‚. Π΄. Как ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅, ΠΌΡ‹ создали ΠΆΠ°Π½Ρ€ ΠΊΠ°ΠΊ модСль, Π° Π½Π΅ ΠΊΠ°ΠΊ свободный тСкст ΠΈΠ»ΠΈ список Π²Ρ‹Π±ΠΎΡ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния ΠΌΠΎΠ³Π»ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π΅Π· Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Π° Π½Π΅ Π±Ρ‹Π»ΠΈΒ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ.

class Genre(models.Model):
Β  Β  """
Β  Β  Model representing a book genre (e.g. Science Fiction, Non Fiction).
Β  Β  """
Β  Β  name = models.CharField(max_length=200, help_text="Enter a book genre (e.g. Science Fiction, French Poetry etc.)")
Β  Β Β 
Β  Β  def __str__(self):
Β  Β  Β  Β  """
Β  Β  Β  Β  String for representing the Model object (in Admin site etc.)
Β  Β  Β  Β  """
Β  Β  Β  Β  return self.name

МодСль ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ CharField field (имя), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для описания ΠΆΠ°Π½Ρ€Π° (ΠΎΠ½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ 200 символами ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ help_text. Π’ ΠΊΠΎΠ½Ρ†Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΡ‹ объявляСм ΠΌΠ΅Ρ‚ΠΎΠ΄ __str __ (), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ просто Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ имя ΠΆΠ°Π½Ρ€Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ записью. НСт ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ, поэтому ΠΏΠΎΠ»Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ Name Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ….

МодСль книги

Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ модСль ΠΊΠ½ΠΈΠ³ΠΈ Π½ΠΈΠΆΠ΅ ΠΈ снова Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π΅Π΅ Π² ниТнюю Ρ‡Π°ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Π°. МодСль ΠΊΠ½ΠΈΠ³ΠΈ прСдставляСт всю ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ доступной ΠΊΠ½ΠΈΠ³Π΅ Π² ΠΎΠ±Ρ‰Π΅ΠΌ смыслС, Π½ΠΎ Π½Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ физичСский «экзСмпляр» ΠΈΠ»ΠΈ «копию» для Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ использования. МодСль ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ CharField для прСдставлСния названия ΠΊΠ½ΠΈΠ³ΠΈ ΠΈ isbn (ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΊΠ°ΠΊ isbn ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ свой ярлык ΠΊΠ°ΠΊ Β«ISBNΒ», ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π½Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ярлык ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±Ρ‹Π» Π±Ρ‹ Β«IsbnΒ»). МодСль ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ TextField для summary, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ этот тСкст, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌ.

from django.urls import reverse #Used to generate URLs by reversing the URL patterns

class Book(models.Model):
Β  Β  """
Β  Β  Model representing a book (but not a specific copy of a book).
Β  Β  """
Β  Β  title = models.CharField(max_length=200)
Β  Β  author = models.ForeignKey('Author', on_delete=models.SET_NULL, null=True)
Β  Β  # Foreign Key used because book can only have one author, but authors can have multiple books
Β  Β  # Author as a string rather than object because it hasn't been declared yet in the file.
Β  Β  summary = models.TextField(max_length=1000, help_text="Enter a brief description of the book")
Β  Β  isbn = models.CharField('ISBN',max_length=13, help_text='13 Character <a href="https://www.isbn-international.org/content/what-isbn">ISBN number</a>')
Β  Β  genre = models.ManyToManyField(Genre, help_text="Select a genre for this book")
Β  Β  # ManyToManyField used because genre can contain many books. Books can cover many genres.
Β  Β  # Genre class has already been defined so we can specify the object above.
Β  Β Β 
Β  Β  def __str__(self):
Β  Β  Β  Β  """
Β  Β  Β  Β  String for representing the Model object.
Β  Β  Β  Β  """
Β  Β  Β  Β  return self.title
Β  Β Β 
Β  Β Β 
Β  Β  def get_absolute_url(self):
Β  Β  Β  Β  """
Β  Β  Β  Β  Returns the url to access a particular book instance.
Β  Β  Β  Β  """
Β  Β  Β  Β  return reverse('book-detail', args=[str(self.id)])

Π–Π°Π½Ρ€ прСдставляСт ΠΈΠ· сСбя ManyToManyField, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΊΠ½ΠΈΠ³Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько ΠΆΠ°Π½Ρ€ΠΎΠ², Π° ΠΆΠ°Π½Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ½ΠΈΠ³. Автор ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· ForeignKey, поэтому Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π°Π²Ρ‚ΠΎΡ€, Π½ΠΎ Ρƒ Π°Π²Ρ‚ΠΎΡ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ½ΠΈΠ³ (Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΊΠ½ΠΈΠ³Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько Π°Π²Ρ‚ΠΎΡ€ΠΎΠ², Π½ΠΎ Π½Π΅ Π² Ρ‚Π°ΠΊΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ!)

Π’ ΠΎΠ±ΠΎΠΈΡ… Ρ‚ΠΈΠΏΠ°Ρ… ΠΏΠΎΠ»Π΅ΠΉ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ класс ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π½Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π»ΠΈΠ±ΠΎ класс ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π»ΠΈΠ±ΠΎ строку, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ имя ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ имя ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊΠ°ΠΊ строку, Ссли связанный класс Π΅Ρ‰Π΅ Π½Π΅ Π±Ρ‹Π» ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² этом Ρ„Π°ΠΉΠ»Π΅ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½! Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΌΠΈ интСрСс для поля Π°Π²Ρ‚ΠΎΡ€Π°, ΡΠ²Π»ΡΡŽΡ‚ΡΡ null=True, котороС позволяСт Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ NullΒ , Ссли Π°Π²Ρ‚ΠΎΡ€ Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π½, ΠΈ on_delete = models.Β SET_NULL установит Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Π²Ρ‚ΠΎΡ€Π° Π² Null, Ссли связанная ΡΒ Π°Π²Ρ‚ΠΎΡ€ΠΎΠΌΒ Π·Π°ΠΏΠΈΡΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½Π°.

МодСль Ρ‚Π°ΠΊΠΆΠ΅ опрСдСляСт __str __ (), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠΎΠ»Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΊΠ½ΠΈΠ³ΠΈ для прСдставлСния ΠΊΠ½ΠΈΠ³ΠΈ. ΠžΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ get_absolute_url () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ URL-адрСс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для доступа ΠΊ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ записи для этой ΠΌΠΎΠ΄Π΅Π»ΠΈ (для этого Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ сопоставлСниС URL-адрСсов, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ содСрТится подробная информация ΠΎ ΠΊΠ½ΠΈΠ³Π΅, ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ связанноС прСдставлСниС ΠΈ шаблон ).

МодСль BookInstance

Π—Π°Ρ‚Π΅ΠΌ скопируйтС модСль BookInstance (ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅) ΠΏΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ. BookInstance прСдставляСт собой ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ копию ΠΊΠ½ΠΈΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ€Π°Ρ‚ΡŒ Π²Π·Π°ΠΉΠΌΡ‹, ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΎΠΌ, доступна Π»ΠΈ копия ΠΈΠ»ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΉ дСнь ΠΎΠ½Π° оТидаСтся, Β«ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊΒ» ΠΈΠ»ΠΈ свСдСния ΠΎ вСрсии, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠ½ΠΈΠ³ΠΈ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· ΠΏΠΎΠ»Π΅ΠΉ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π±ΡƒΠ΄ΡƒΡ‚ Π·Π½Π°ΠΊΠΎΠΌΡ‹. МодСль ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚

  • ForeignKey для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ связанной ΠΊΠ½ΠΈΠ³ΠΈ (Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΠΉ, Π½ΠΎ Π² ΠΊΠΎΠΏΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° ΠΊΠ½ΠΈΠ³Π°).
  • CharField, для прСдставлСния данных (ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ выпуска) ΠΎ ΠΊΠ½ΠΈΠ³Π΅.
import uuid # Required for unique book instances

class BookInstance(models.Model):
    """
    Model representing a specific copy of a book (i.e. that can be borrowed from the library).
    """
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, help_text="Unique ID for this particular book across whole library")
    book = models.ForeignKey('Book', on_delete=models.SET_NULL, null=True) 
    imprint = models.CharField(max_length=200)
    due_back = models.DateField(null=True, blank=True)

    LOAN_STATUS = (
        ('m', 'Maintenance'),
        ('o', 'On loan'),
        ('a', 'Available'),
        ('r', 'Reserved'),
    )

    status = models.CharField(max_length=1, choices=LOAN_STATUS, blank=True, default='m', help_text='Book availability')

    class Meta:
        ordering = ["due_back"]
        

    def __str__(self):
        """
        String for representing the Model object
        """
        return '%s (%s)' % (self.id,self.book.title)

ΠœΡ‹ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ объявляСм нСсколько Π½ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΠ»Π΅ΠΉ:

  • UUIDField ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для поля id, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΊ primary_key для этой ΠΌΠΎΠ΄Π΅Π»ΠΈ. Π­Ρ‚ΠΎΡ‚ Ρ‚ΠΈΠΏ поля выдСляСт глобальноС ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ экзСмпляра (ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅).
  • DateField ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π΄Π°Π½Π½Ρ‹Ρ… due_back (ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… оТидаСтся, Ρ‡Ρ‚ΠΎ ΠΊΠ½ΠΈΠ³Π° появится послС заимствования ΠΈΠ»ΠΈ обслуТивания). Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ blank ΠΈΠ»ΠΈ null (Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΊΠ½ΠΈΠ³Π° доступна). ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ (Class Meta) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ это ΠΏΠΎΠ»Π΅ для упорядочивания записСй, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ Π² запросС.
  • status — это CharField, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт список choice/selection. Как Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΌΡ‹ опрСдСляСм ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, содСрТащий ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΏΠ°Ρ€ ΠΊΠ»ΡŽΡ‡-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ Π΅Π³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρƒ Π²Ρ‹Π±ΠΎΡ€Π°. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² key/value ΠΏΠ°Ρ€Π΅ — это ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, Π° ΠΊΠ»ΡŽΡ‡ΠΈ — это значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ фактичСски ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ, Ссли Π²Ρ‹Π±Ρ€Π°Π½Π° опция. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ установили Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Β«mΒ» (тСхничСскоС обслуТиваниС), ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ½ΠΈΠ³ΠΈ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ созданы нСдоступными Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΏΠΎΠ»ΠΊΠ°Ρ….

МодСль __str __ () прСдставляСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ BookInstance, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ Π΅Π³ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° ΠΈ связанного с Π½ΠΈΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΊΠ½ΠΈΠ³ΠΈ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. НСмного Python’Π°:

  • Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ __str __ (), являСтся Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ строкой. Π’ строкС ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ % S для объявлСния ‘placeholders’. ПослС строки ΡƒΠΊΠ°ΠΆΠ΅ΠΌ %, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, содСрТащий значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ вставлСны Π² Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΠΈ. Если Ρƒ вас просто ΠΎΠ΄ΠΈΠ½ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ — Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ‘МоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅:% S’ % пСрСмСнная.

    ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ, хотя этот ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ, Π½ΠΎ ΠΎΠ½ Π±ΠΎΠ»Π΅Π΅ Π½Π΅ являСтся ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. Начиная с Python 3, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ format, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€. ‘{0} ({1})’.formatΒ (self.id, self.book.title). Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ большС ΠΎΠ± этом  здСсь.

МодСль Π°Π²Ρ‚ΠΎΡ€Π°

Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ модСль Π°Π²Ρ‚ΠΎΡ€Π° (ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅) ΠΏΠΎΠ΄ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π² models.py.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ всС поля/ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π·Π½Π°ΠΊΠΎΠΌΡ‹. МодСль опрСдСляСт Π°Π²Ρ‚ΠΎΡ€Π° ΠΊΠ°ΠΊ имя, Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ, Π΄Π°Ρ‚Ρƒ роТдСния ΠΈ (Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ) Π΄Π°Ρ‚Ρƒ смСрти. Он ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ __str __ () Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ имя Π² Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ, порядковый Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ. ΠœΠ΅Ρ‚ΠΎΠ΄ get_absolute_url () отмСняСт сопоставлСниС URL-адрСса Π°Π²Ρ‚ΠΎΡ€Π° с Ρ†Π΅Π»ΡŒΡŽ получСния URL-адрСса для отобраТСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π°Π²Ρ‚ΠΎΡ€Π°.

class Author(models.Model):
Β  Β  """
Β  Β  Model representing an author.
Β  Β  """
Β  Β  first_name = models.CharField(max_length=100)
Β  Β  last_name = models.CharField(max_length=100)
Β  Β  date_of_birth = models.DateField(null=True, blank=True)
Β  Β  date_of_death = models.DateField('Died', null=True, blank=True)
Β  Β Β 
Β  Β  def get_absolute_url(self):
Β  Β  Β  Β  """
Β  Β  Β  Β  Returns the url to access a particular author instance.
Β  Β  Β  Β  """
Β  Β  Β  Β  return reverse('author-detail', args=[str(self.id)])
Β  Β Β 

Β  Β  def __str__(self):
Β  Β  Β  Β  """
Β  Β  Β  Β  String for representing the Model object.
Β  Β  Β  Β  """
Β  Β  Β  Β  return '%s, %s' % (self.last_name, self.first_name)

ΠŸΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΡŽ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

Π’Π΅ΠΏΠ΅Ρ€ΡŒ всС ваши ΠΌΠΎΠ΄Π΅Π»ΠΈ созданы. Π’Π΅ΠΏΠ΅Ρ€ΡŒ пСрСустановитС ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΡŽ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π² свою Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ….

python3 manage.py makemigrations
python3 manage.py migrate

Языковая модСль — Π²Ρ‹Π·ΠΎΠ²

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ сСбС, Ρ‡Ρ‚ΠΎ мСстный Π±Π»Π°Π³ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚Π΅Π»ΡŒ ΠΆΠ΅Ρ€Ρ‚Π²ΡƒΠ΅Ρ‚ ряд Π½ΠΎΠ²Ρ‹Ρ… ΠΊΠ½ΠΈΠ³, написанных Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ языкС (скаТСм, фарси). Π—Π°Π΄Π°Ρ‡Π° состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π»ΡƒΡ‡ΡˆΠ΅ всСго прСдставлСны Π½Π° нашСм Π²Π΅Π±-сайтС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ.

НСкоторыС Π²Π΅Ρ‰ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ:

  • Π”ΠΎΠ»ΠΆΠ΅Π½ Π»ΠΈ «язык» Π°ΡΡΠΎΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ с Book, BookInstance ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ?
  • Π”ΠΎΠ»ΠΆΠ½Ρ‹ Π»ΠΈ Π±Ρ‹Ρ‚ΡŒ прСдставлСны Ρ€Π°Π·Π½Ρ‹Π΅ языки с использованиСм ΠΌΠΎΠ΄Π΅Π»ΠΈ, свободного тСкстового поля ΠΈΠ»ΠΈ ТСстко Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ списка Π²Ρ‹Π±ΠΎΡ€Π°?

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΏΠΎΠ»Π΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ нашС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° GithubΒ here.

РСзюмС

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΡƒΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒΒ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΒ ΡΡ‚Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅Β ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΈΒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ для сайта LocalLibrary.

На этом этапС ΠΌΡ‹ отвлСчСмся ΠΎΡ‚ создания сайта ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Django Administration site. Π­Ρ‚ΠΎΡ‚ сайт ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π½Π°ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π°ΡˆΠΈΡ… (Π΅Ρ‰Π΅ Π½Π΅ созданных) прСдставлСний ΠΈ шаблонов.

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

10 Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² для изучСния Django

НС Π·Π½Π°Π΅Ρ‚Π΅, с Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Django? Π’ΠΎΠ³Π΄Π° данная ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΊΠ° рСсурсов Ρ‚ΠΎΡ‡Π½ΠΎ для вас!

1. Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π”ΠΆΠ°Π½Π³ΠΎ

НС Π·Π½Π°Π΅Ρ‚Π΅, с Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ? Вопрос «Π ΠΊΠ°ΠΊΡƒΡŽ ΠΆΠ΅ Π²Π΅Ρ€ΡΠΈΡŽ Π”ΠΆΠ°Π½Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?» Π½Π΅ Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ покоя? Π—Π½Π°Ρ‡ΠΈΡ‚, смСло ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΉ ссылкС ΠΈ, Π½Π΅ ΡΠΎΠΌΠ½Π΅Π²Π°ΠΉΡ‚Π΅ΡΡŒ, Π΄Π°Π½Π½Ρ‹ΠΉ вопрос Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½.

2. ДокумСнтация ΠΏΠΎ Π”ΠΆΠ°Π½Π³ΠΎ

Как ΠΈ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ с Π»ΡŽΠ±Ρ‹ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠΌ ΠΈΠ»ΠΈ языком программирования, Π·Π½Π°Π½ΠΈΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π·Π°Π΄Π°Ρ‡, поэтому ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ рСсурсом Π±ΡƒΠ΄Π΅Ρ‚ докумСнтация ΠΏΠΎ Π”ΠΆΠ°Π½Π³ΠΎ.

3. Ванго с Django

Данная ΠΊΠ½ΠΈΠ³Π° — это ваш ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Π³ΠΈΠ΄ Π² ΠΌΠΈΡ€Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π”ΠΆΠ°Π½Π³ΠΎ. По ΠΌΠ΅Ρ€Π΅ прочтСния ΠΊΠ½ΠΈΠ³ΠΈ Π²Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°ΠΊ ΡΡ‚Π°Π½Ρ†Π΅Π²Π°Ρ‚ΡŒ Ρ‚Π°Π½Π³ΠΎ с Π”ΠΆΠ°Π½Π³ΠΎ, Π½ΠΎ ΠΈ Ρ‚Π°ΠΊΠΈΠ΅ популярныС Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ Javascript/jQuery, CSS/Bootstrap ΠΈ HTML, PIP ΠΈ Git/GitHub.

4. Онлайн-ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ Django

Данная ΠΎΠ½Π»Π°ΠΉΠ½-ΠΊΠ½ΠΈΠ³Π° – это постоянно Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉΡΡ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ Π”ΠΆΠ°Π½Π³ΠΎ. Если Π²Ρ‹ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π»ΠΈ Π΄Π΅Π»ΠΎ с Π΄Π°Π½Π½Ρ‹ΠΌ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠΌ ΠΈ Ρƒ вас Π΅ΡΡ‚ΡŒ интСрСсный ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‚ΠΎ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΎΠ± этом Π°Π²Ρ‚ΠΎΡ€Ρƒ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ, ΠΈ ΠΎΠ½ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡ‡Ρ‚Π΅Ρ‚ ваш ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

5.Β Django 1.0 Website Development

Данная ΠΊΠ½ΠΈΠ³Π° рассказываСт ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΉ вСрсии Π”ΠΆΠ°Π½Π³ΠΎ, Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ основы Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°. ПолСзна для прочтСния ΠΊΠ°ΠΊ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ, Ρ‚Π°ΠΊ ΠΈ Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ ΡƒΠΆΠ΅ Π΄Π°Π²Π½ΠΎ Π·Π½Π°ΠΊΠΎΠΌ с Π΄Π°Π½Π½Ρ‹ΠΌ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠΌ, вСдь основы всСгда Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ.

6. ПишСм своС ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Django

Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅ чтСния ΠΊΠ½ΠΈΠ³? ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, практичСскоС закрСплСния ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°. Π”Π°Π½Π½Ρ‹ΠΉ Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π» ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ своС ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ ΡƒΠ΄Π΅Π»ΠΈΠ»ΠΈ ΠΌΠ°Π»ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΡŽ ΠΊΠ½ΠΈΠ³.

7. Π’ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π»Ρ‹ ΠΏΠΎ Django

Данная ссылка являСтся списком ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° ΠΏΠΎ Π”ΠΆΠ°Π½Π³ΠΎ. Π—Π΄Π΅ΡΡŒ любой Π½Π°ΠΉΠ΄Π΅Ρ‚ для сСбя ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ ΠΈΠ»ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΉ спСциалист. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ мноТСство ΠΊΠ½ΠΈΠ³, видСокурсов ΠΈ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство полСзных Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π»ΠΎΠ².

8. ВидСокурс ΠΏΠΎ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π° Django

Π”Π°Π½Π½Ρ‹ΠΉ видСокурс содСрТит ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ Ρ€Π°Π·Π±ΠΎΡ€ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Π”ΠΆΠ°Π½Π³ΠΎ, начиная ΠΎΡ‚ установки ΠΈ заканчивая Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΈ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ, ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ спСциалистам, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ всСгда ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ для сСбя Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ΅.

9. Π’ΠΈΠ΄Π΅ΠΎ-Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π»Ρ‹ ΠΏΠΎ Django

Π’ΠΈΠ΄Π΅ΠΎ-Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π»Ρ‹ ΠΏΠΎ Π”ΠΆΠ°Π½Π³ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… рассказываСтся практичСски всС ΠΏΡ€ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Π² ΠΈΡ…, Π²Ρ‹ с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ установитС ΠΈ создадитС своС ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

10.Β Python Web Development with Django

Данная ΠΊΠ½ΠΈΠ³Π° содСрТит Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ тСорСтичСскиС свСдСния ΠΎ Π”ΠΆΠ°Π½Π³ΠΎ, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ±ΡˆΠΈΡ€Π½ΡƒΡŽ Π³Π»Π°Π²Ρƒ, ΠΏΠΎΡΠ²ΡΡ‰Ρ‘Π½Π½ΡƒΡŽ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅. ПослС прочтСния Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Π²Ρ‹ с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ смоТСтС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π”ΠΆΠ°Π½Π³ΠΎ Π² Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… условиях.

Для ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ наш видСокурс ΠΏΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΡƒ Django.

Π₯ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΡ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ рСсурсы? ΠŸΠΈΡˆΠΈΡ‚Π΅ Π² коммСнтариях, ΠΈ ΠΌΡ‹ внСсСм ΠΈΡ… Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ!

НаписаниС вашСго ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ прилоТСния Django, Ρ‡Π°ΡΡ‚ΡŒ 1 | ДокумСнтация Django

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅.

Π’ этом руководствС ΠΌΡ‹ расскаТСм, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ
ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для опроса.

Бостоит ΠΈΠ· Π΄Π²ΡƒΡ… частСй:

  • ΠžΠ±Ρ‰Π΅Π΄ΠΎΡΡ‚ΡƒΠΏΠ½Ρ‹ΠΉ сайт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт людям ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ опросы ΠΈ Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°Ρ‚ΡŒ Π² Π½ΠΈΡ….
  • Административный сайт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ опросы.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρƒ вас ΡƒΠΆΠ΅ установлСн Django. Π’Ρ‹ моТСшь
скаТитС, Ρ‡Ρ‚ΠΎ Django установлСн ΠΈ ΠΊΠ°ΠΊΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ
Π² ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ (обозначаСтся прСфиксом $):

Если установлСн Django, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π²Π΅Ρ€ΡΠΈΡŽ своСй установки.Если это
Π½Π΅Ρ‚, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ сообщСниС «НСт модуля с ΠΈΠΌΠ΅Π½Π΅ΠΌ djangoΒ».

Π­Ρ‚ΠΎ руководство написано для Django 3.0, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Python 3.6 ΠΈ
ΠΏΠΎΡ‚ΠΎΠΌ. Если вСрсия Django Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ руководству ΠΏΠΎ
ваша вСрсия Django с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ вСрсий Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π½ΠΈΠΆΠ½Π΅ΠΌ ΡƒΠ³Π»Ρƒ
этой страницы ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ Django Π΄ΠΎ послСднСй вСрсии. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΡΡ‚Π°Ρ€ΡƒΡŽ
вСрсия Python, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠšΠ°ΠΊΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Python ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с Django? Π½Π°ΠΉΡ‚ΠΈ совмСстимый
вСрсия Django.

Π‘ΠΌ. Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Django, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ
старыС вСрсии Django ΠΈ установитС Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²ΡƒΡŽ.

Π“Π΄Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠΌΠΎΡ‰ΡŒ:

Если Ρƒ вас Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ этого руководства, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π°
Ρ€Π°Π·Π΄Π΅Π» ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π² FAQ.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΒΆ

Если Π²Ρ‹ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Django, Π²Π°ΠΌ придСтся ΠΏΠΎΠ·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ…
ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ настройка. А ΠΈΠΌΠ΅Π½Π½ΠΎ, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ устанавливаСт
ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Django — Π½Π°Π±ΠΎΡ€ настроСк для экзСмпляра Django,
Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Django ΠΈ
настройки для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ прилоТСния.

Из ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки Π²Π²Π΅Π΄ΠΈΡ‚Π΅ cd Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ
code, Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Π­Ρ‚ΠΎ создаст Π² вашСм Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ mysite . Если Π±Ρ‹ Π½Π΅
Ρ€Π°Π±ΠΎΡ‚Ρ‹, см. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с запуском django-admin.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π’Π°ΠΌ слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ имСнования ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² послС встроСнного Python ΠΈΠ»ΠΈ Django.
составныС части. Π’ частности, это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ использования Ρ‚Π°ΠΊΠΈΡ… ΠΈΠΌΠ΅Π½, ΠΊΠ°ΠΊ
django (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ²Π°Ρ‚ΡŒ с самим Django) ΠΈΠ»ΠΈ test (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ
ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΠ΅Ρ‚ со встроСнным ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ Python).

Π“Π΄Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ этот ΠΊΠΎΠ΄?

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ старый Π΄ΠΎΠ±Ρ€Ρ‹ΠΉ PHP (Π±Π΅Π· использования соврСмСнных Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ²),
Π²Ρ‹, вСроятно, ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π²Π΅Π±-сСрвСра
(Π² Ρ‚Π°ΠΊΠΎΠΌ мСстС, ΠΊΠ°ΠΊ / var / www ). Π‘ Django этого Π½Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Π­Ρ‚ΠΎ
Π½Π΅ Π»ΡƒΡ‡ΡˆΠ°Ρ идСя Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΈΠ· этого ΠΊΠΎΠ΄Π° Python Π½Π° вашСм Π²Π΅Π±-сСрвСрС
ΠΊΠΎΡ€Π΅Π½ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это рискуСт, Ρ‡Ρ‚ΠΎ люди смогут
Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ свой ΠΊΠΎΠ΄ Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅. Π­Ρ‚ΠΎ ΠΏΠ»ΠΎΡ…ΠΎ для бСзопасности.

ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ свой ΠΊΠΎΠ΄ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ корня Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€
/ главная / мойкод .

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, Ρ‡Ρ‚ΠΎ создал startproject :

 ΠΌΠΈΠ·ΠΈΡ‚ /
    manage.py
    ΠΌΠΎΠΉ сайт/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py
 

Π­Ρ‚ΠΎ Ρ„Π°ΠΉΠ»Ρ‹:

  • Π’Π½Π΅ΡˆΠ½ΠΈΠΉ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ mysite / являСтся ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠΌ для вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. это
    имя Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния для Django; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π²ΠΎ Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ.
  • manage.py : Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, которая позволяСт Π²Π°ΠΌ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с этим
    ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Django Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ способами.Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС подробности ΠΎ
    manage.py Π² django-admin ΠΈ manage.py.
  • Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ mysite / — это фактичСский ΠΏΠ°ΠΊΠ΅Ρ‚ Python для вашСго
    ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Π•Π³ΠΎ имя — это имя ΠΏΠ°ΠΊΠ΅Ρ‚Π° Python, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΈΠΌΠΏΠΎΡ€Ρ‚Π°.
    Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π΅Π³ΠΎ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, mysite.urls ).
  • mysite / __ init__.py : пустой Ρ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сообщаСт Python, Ρ‡Ρ‚ΠΎ это
    ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ слСдуСт Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΏΠ°ΠΊΠ΅Ρ‚ Python. Если Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² Python,
    ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°Ρ… Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Python.
  • mysite / settings.py : Настройки / конфигурация для этого Django
    ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Настройки Django расскаТут Π²Π°ΠΌ, ΠΊΠ°ΠΊ
    Ρ€Π°Π±ΠΎΡ‚Π°ΠΉ.
  • mysite / urls.py : объявлСния URL для этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Django;
    «ОглавлСниС» вашСго сайта Π½Π° Django. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ большС ΠΎ
    URL-адрСса Π² диспСтчСрС URL-адрСсов.
  • mysite / asgi.py : Ρ‚ΠΎΡ‡ΠΊΠ° Π²Ρ…ΠΎΠ΄Π° для ASGI-совмСстимых Π²Π΅Π±-сСрвСров Π²
    ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния см. Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ «Как Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ASGIΒ».
  • mysite / wsgi.py : Ρ‚ΠΎΡ‡ΠΊΠ° Π²Ρ…ΠΎΠ΄Π° для WSGI-совмСстимых Π²Π΅Π±-сСрвСров Π²
    ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния см. Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ «Как Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ WSGIΒ».

Π‘Π΅Ρ€Π²Π΅Ρ€ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈΒΆ

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Django Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π²ΠΎ внСшний ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ mysite , Ссли
Π²Ρ‹ Π΅Ρ‰Π΅ этого Π½Π΅ сдСлали, ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ систСмных ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ ...

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° систСмы Π½Π΅ выявила ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ (0 ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ).Π£ вас Π΅ΡΡ‚ΡŒ Π½Π΅ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ; вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΈ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Ρ‹.
ЗапуститС python manage.py migrate, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ….

03 августа, 2020-15: 50:53
Django вСрсии 3.0 с использованиСм настроСк mysite.settings
Запуск сСрвСра Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° 

.

НаписаниС вашСго ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ прилоТСния Django, Ρ‡Π°ΡΡ‚ΡŒ 2 | ДокумСнтация Django

Π­Ρ‚ΠΎΡ‚ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ начинаСтся с Ρ‚ΠΎΠ³ΠΎ мСста, Π³Π΄Π΅ остановился Π£Ρ€ΠΎΠΊ 1.
ΠœΡ‹ настроим Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, создадим Π²Π°ΡˆΡƒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ модСль ΠΈ быстро познакомимся
Π½Π° автоматичСски созданный сайт администратора Django.

Настройка Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…ΒΆ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ mysite / settings.py . Π­Ρ‚ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Python с
ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ уровня модуля, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ настройки Django.

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ SQLite. Если Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΠ»ΠΈ
Π²Π°ΠΌ просто интСрСсно ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Django, это самый простой Π²Ρ‹Π±ΠΎΡ€.SQLite — это
Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² Python, поэтому Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ Π΅Ρ‰Π΅ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ вашСго
Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…. Однако, начиная свой ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ настоящий ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Ρ…ΠΎΡ‚Π΅Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ
Π±ΠΎΠ»Π΅Π΅ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠ°Ρ Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…, такая ΠΊΠ°ΠΊ PostgreSQL, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…
ΠΏΠΎ Π΄ΠΎΡ€ΠΎΠ³Π΅.

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, установитС ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…
привязки ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡ΠΈ Π²
БАЗЫ ДАННЫΠ₯ 'default' элСмСнт, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…
настройки:

  • Π”Π’Π˜Π“ΠΠ’Π•Π›Π¬ — Π›ΠΈΠ±ΠΎ
    'Π΄ΠΆΠ°Π½Π³ΠΎ.db.backends.sqlite3 ',
    'django.db.backends.postgresql' ,
    'django.db.backends.mysql' , ΠΈΠ»ΠΈ
    'django.db.backends.oracle' . Π’Π°ΠΊΠΆΠ΅ доступны Π΄Ρ€ΡƒΠ³ΠΈΠ΅ бэкСнды.
  • ИМЯ — Имя вашСй Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ SQLite,
    Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ Ρ„Π°ΠΉΠ»ΠΎΠΌ Π½Π° вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅; Π² этом случаС ИМЯ
    Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΌ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ имя Ρ„Π°ΠΉΠ»Π°, этого Ρ„Π°ΠΉΠ»Π°.
    Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, os.path.join (BASE_DIR, 'db.sqlite3') , сохранит Ρ„Π°ΠΉΠ»
    Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Если Π²Ρ‹ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ SQLite Π² качСствС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ настройки, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ
USER , PASSWORD ΠΈ HOST Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹.
Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свСдСний см. Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ для БАЗЫ ДАННЫΠ₯ .

Для Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ SQLite

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠΌΠΈΠΌΠΎ SQLite, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ создали
Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΊ этому ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ. Π‘Π΄Π΅Π»Π°ΠΉΡ‚Π΅ это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Β« CREATE DATABASE имя_Π±Π°Π·Ρ‹_Π΄Π°Π½Π½Ρ‹Ρ…; ”
Π² ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ подсказкС вашСй Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Π’Π°ΠΊΠΆΠ΅ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΡƒΠΊΠ°Π·Π°Π½ Π² mysite / settings.py
ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎ Β«ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…Β». Π­Ρ‚ΠΎ позволяСт автоматичСски ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ
тСстовая Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…, которая понадобится Π² дальнСйшСм
руководство.

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ SQLite, Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅ —
Ρ„Π°ΠΉΠ» Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ создан автоматичСски, ΠΊΠΎΠ³Π΄Π° это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ.

Пока Π²Ρ‹ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ mysite / settings.py , установитС TIME_ZONE Π½Π°
ваш часовой пояс.

Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ INSTALLED_APPS Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части Ρ„Π°ΠΉΠ»Π°.ΠšΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ
содСрТит ΠΈΠΌΠ΅Π½Π° всСх ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Django, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π² этом Django
ΠΏΡ€ΠΈΠΌΠ΅Ρ€. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…, ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΈ
Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ΠΈΡ… для использования Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π² своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ INSTALLED_APPS содСрТит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ прилоТСния, всС ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ…
приходят с Django:

Π­Ρ‚ΠΈ прилоТСния Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для удобства Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС.

Однако Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· этих ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ ΠΎΠ΄Π½Ρƒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…,
поэтому Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΌΡ‹ смоТСм ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.Π”Π΅Π»Π°Ρ‚ΡŒ
послС этого Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Команда migrate смотрит Π½Π°

.

Django Tutorials для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Guru99

  • Home
  • Testing

      • Back
      • Agile Testing
      • BugZilla
      • Cucumber
      • 000 JB
      • 9000 9000 JB 9000 Testing 9000 9000 9000 9000 J2

      • JUnit
      • LoadRunner
      • Π ΡƒΡ‡Π½ΠΎΠ΅ тСстированиС
      • МобильноС тСстированиС
      • Mantis
      • ΠŸΠΎΡ‡Ρ‚Π°Π»ΡŒΠΎΠ½
      • QTP
      • Назад
      • Π¦Π΅Π½Ρ‚Ρ€ контроля качСства (ALM)
      • RPA 9000 Test5
      • RPA 9000 SoapI Test5 Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅
      • TestLink
  • SAP

      • Назад
      • ABAP 900 05
      • APO
      • ΠΠ°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉ
      • Basis
      • BODS
      • BI
      • BPC
      • CO
      • Назад
      • CRM
      • Crystal Reports
      • QM
      • Crystal Reports
      • FICO
      • 9000 9000 9000 HRM

      • 9000 9000 HRM
      • 9000 Заработная ΠΏΠ»Π°Ρ‚Π°

      • Назад
      • PI / PO
      • PP
      • SD
      • SAPUI5
      • Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ
      • ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ
      • Successfactors
      • Π£Ρ‡Π΅Π±Π½ΠΈΠΊΠΈ SAP
    • 8
    • Apache

    • AngularJS
    • ASP.Net
    • C
    • C #
    • C ++
    • CodeIgniter
    • Π‘Π£Π‘Π”
    • JavaScript
    • Назад
    • Java
    • JSP
    • Kotlin
    • Linux
    • Linux
    • Kotlin
    • Linux
    • js

    • Perl
    • Назад
    • PHP
    • PL / SQL
    • PostgreSQL
    • Python
    • ReactJS
    • Ruby & Rails
    • Scala
    • SQL
    • SQL
    • UML
    • VB.Net
    • VBScript
    • Π’Π΅Π±-слуТбы
    • WPF
  • ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Π΅!

      • Назад
      • БухгалтСрский ΡƒΡ‡Π΅Ρ‚
      • Алгоритмы
      • Android
      • Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½
      • Business Analyst
      • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅Π±-сайта
      • CCNA
      • ΠžΠ±Π»Π°Ρ‡Π½Ρ‹Π΅ вычислСния
      • COBOL 9000 9000 Compiler
          0005

        • 9000 ВстроСнныС систСмы
        • Ethical Hacking
        • Π£Ρ‡Π΅Π±Π½Ρ‹Π΅ пособия ΠΏΠΎ Excel
        • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Go
        • IoT
        • ITIL
        • Jenkins
        • MIS
        • Π‘Π΅Ρ‚Π΅Π²Ρ‹Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ
        • ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма
        • 000

        • 9000

        • Назад
        • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠžΠ±Π·ΠΎΡ€Ρ‹

        • Salesforce
        • SEO
        • Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния
        • VB A
    • Π‘ΠΎΠ»ΡŒΡˆΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅

        • Назад
        • AWS
        • BigData
        • Cassandra
        • Cognos
        • Π₯Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π΄Π°Π½Π½Ρ‹Ρ…
        • 0005

          HBOps

          HBOps

        • MicroStrategy
        • MongoDB

    ,

    руководств ΠΏΠΎ Django — Настоящий Python

    1. Π£Ρ‡Π΅Π±Π½ΠΈΠΊΠΈ
    2. Π’Π΅ΠΌΡ‹
    3. Π£Ρ‡Π΅Π±Π½ΠΈΠΊΠΈ ΠΏΠΎ Django

    Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π”ΠΆΠ°Π½Π³ΠΎ?

    Django — это высокоуровнСвый Π²Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Python, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ способствуСт быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈ чистому ΠΏΡ€Π°Π³ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΠΌΡƒ Π΄ΠΈΠ·Π°ΠΉΠ½Ρƒ. Π’Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ — это Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ стандартный способ быстрой ΠΈ простой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π΅Π±-сайтов. Основная Ρ†Π΅Π»ΡŒ Django — ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ созданиС слоТных Π²Π΅Π±-сайтов Π½Π° Π±Π°Π·Π΅ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. НСкоторыС извСстныС сайты, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ Django, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ PBS, Instagram, Disqus, Washington Times, Bitbucket ΠΈ Mozilla.

    Π§Ρ‚ΠΎ Π²Ρ‹ здСсь Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅?

    Если Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² Django, ΠΌΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ с курса Real Python, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡ‡Π½ΡƒΡŽ основу Π² Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π° Python. Π£Ρ‡Π΅Π±Π½ΠΈΠΊΠΈ Π² этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΌΠΈ ΡΡ‚Π°Ρ‚ΡŒΡΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ аспСкты Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Django, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ:

    ВСстированиС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Django.

    • ВСстированиС ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ. Π‘Ρ‚Π°Ρ‚ΡŒΠΈ ΠΎ тСстировании познакомят вас с ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΌ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ тСстированиСм Π²Π°ΡˆΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Django.Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚Π°Ρ… ΠΈ ​​библиотСках, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π² написании ΠΈ запускС Π½Π°Π±ΠΎΡ€ΠΎΠ² тСстов.

    REST API

    • Π£Π·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ RESTFul API с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Django Rest Framework (DRF), прилоТСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ для быстрого создания RESTful API Π½Π° основС ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Django.

    Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ

    • Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ Django, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс, структуру ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ распространСнных ошибок ΠΏΡ€ΠΈ создании ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Django.

    Π Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅

    • Когда вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ‚ΠΎΠ²ΠΎ ΠΏΠΎΠΊΠΈΠ½ΡƒΡ‚ΡŒ ΠΊΠΎΠΌΠ½Π°Ρ‚Ρƒ ΠΈ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚Ρ‹ΠΌ, ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ пособия ΠΈ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΏΠΎ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΡŽ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ доступныС Π²Π°ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ развСртывания ΠΈ способы развСртывания вашСго сайта Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ….

    ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

    • Быстрая Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° страниц ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚ посСщСния вашСго сайта. Π—Π΄Π΅ΡΡŒ Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ ΠΎ Ρ„Π°ΠΊΡ‚ΠΎΡ€Π°Ρ…, Π·Π°ΠΌΠ΅Π΄Π»ΡΡŽΡ‰ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρƒ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΈ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π·Π° счСт ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ.

    ,

  • Leave a Comment

    Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *