Namespacing URL names
Siz o'rganish jarayonida django loyihangizda faqat bitta app yaratib ishlaysiz, lekin kattaroq django loyihalarida bir nechta 10 ta yoki 20 talab applar bo'lishi mumkin. Django ular orasidagi URL nomlarini qanday farqlaydi?
Misol uchun posts app muvjud va unda detail views bor, xuddi shu blog app uchun ham mavjud bo'lsa, template
Javob oddiy loyihaning urls.py sozlamalariga namespace ni qo'shish
Postda kamchiliklar va qo'shimcha fikrlar bo'lsa izohlarda kutaman ๐ซก
๐ @python_backend_dev
Siz o'rganish jarayonida django loyihangizda faqat bitta app yaratib ishlaysiz, lekin kattaroq django loyihalarida bir nechta 10 ta yoki 20 talab applar bo'lishi mumkin. Django ular orasidagi URL nomlarini qanday farqlaydi?
Misol uchun posts app muvjud va unda detail views bor, xuddi shu blog app uchun ham mavjud bo'lsa, template
{% url %} tegidan foydalanganda url manzil qaysi appga tegishliligini qanday farqlashi mumkin?Javob oddiy loyihaning urls.py sozlamalariga namespace ni qo'shish
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('posts.urls', namespace='posts')),
]
va posts appni urls.py fayliga app_name ni quyidagicha qo'shing:from django.urls import path
from . import views
app_name = 'posts'
urlpatterns = [
path('', views.index, name='index'),
path('<int:post_id>/', views.detail, name='detail'),
]
Endi posts/index.html templateni o'zgartiring:<li><a href="{% url 'posts:detail' post.id %}">{{ post.title }}</a></li>
Ko'proq o'rganmoqchi bo'lsagiz, Django documentatsiyasini o'qing.Postda kamchiliklar va qo'shimcha fikrlar bo'lsa izohlarda kutaman ๐ซก
๐ @python_backend_dev
๐4๐คฉ1
Barchaga xayrli tun bugun nima haqida post qo'yishni bilmadim agar yana takliflar bo'lsa izohda yozib qoldiringlar
๐4
Pythonda foydalanuvchi kiritgan Elektron pochta manzilining username va domen nomini ajratib olish.
Kodni kim oสปqiy oldi, izohda qoldiring ๐
๐ @python_backend_dev
Kodni kim oสปqiy oldi, izohda qoldiring ๐
๐ @python_backend_dev
๐6
https://youtu.be/sTeoEFzVNSc
Mosh aka ChatGPT haqida zoสปr video dars tayyorlabdi.
Shunchaki ko'rib chiqing, to'g'risi qoyil qoldim. ChatGPT haqida shu paytgacha post joylamagandim chunki qanday ishlashiga unchalik qiziqmagandim. Bu vidoeni ko'rib, (vapshe) zo'r.
Faqat o'zimizda ishlamas ekanda shunisi dilni xira qilarkan lekin yo'li bor.
ChatGPT Desktop App: https://github.com/f/awesome-chatgpt-prompts
ChatGPT Chrome Extension: Link
๐ @python_backend_dev
Mosh aka ChatGPT haqida zoสปr video dars tayyorlabdi.
Shunchaki ko'rib chiqing, to'g'risi qoyil qoldim. ChatGPT haqida shu paytgacha post joylamagandim chunki qanday ishlashiga unchalik qiziqmagandim. Bu vidoeni ko'rib, (vapshe) zo'r.
Faqat o'zimizda ishlamas ekanda shunisi dilni xira qilarkan lekin yo'li bor.
ChatGPT Desktop App: https://github.com/f/awesome-chatgpt-prompts
ChatGPT Chrome Extension: Link
๐ @python_backend_dev
YouTube
ChatGPT Tutorial for Developers - 38 Ways to 10x Your Productivity
Learn how to use ChatGPT to 10x your productivity! 38 examples using Python, JavaScript, HTML, CSS, React, SQL and more!
- Subscribe for more ChatGPT tutorials: https://goo.gl/6PYaGF
ChatGPT Desktop App: https://github.com/f/awesome-chatgpt-prompts
ChatGPTโฆ
- Subscribe for more ChatGPT tutorials: https://goo.gl/6PYaGF
ChatGPT Desktop App: https://github.com/f/awesome-chatgpt-prompts
ChatGPTโฆ
๐3
Django admin panelida posts qismida unga yozilgan comment ni ko'rsatish
Birinchi navbatda admin.py faylimizga quyidagicha import qilib olamiz:
StackedInline yoki TabularInline
Post yoqqan bo'lsa like bosamiz ๐ซก
๐ @python_backend_dev
Birinchi navbatda admin.py faylimizga quyidagicha import qilib olamiz:
from django.contrib import admin
from .models import Post, Comment
rasmdagi ko'rinishga keltirish uchun quyidagi class lardan foydalanamiz:StackedInline yoki TabularInline
class CommentInline(admin.StackedInline):
model = Comment
va post modelimizga ham class yozib unda inlines fieldiga yuqoridagi classni qiymat sifatida beramiz:class PostAdmin(admin.ModelAdmin):
inlines = [
CommentInline
]
Qiziq shu paytgacha ishlatmagan ekanman ๐Post yoqqan bo'lsa like bosamiz ๐ซก
๐ @python_backend_dev
๐2๐ฅ2
Assalomu alaykum yaxshimisizlar bugun Resume topshirgan academy ga suhbatga kelgandim tushgan savollarni ulashmoqchiman
Meni tasavvurimdagi suhbat boสปlmadi toสปgสปrisi ๐. Lekin yaxshi, boสปladi.
1. Githubdagi loyihalar boสปyicha yani qaysi joyida nima ish qiganiz.
2. Python core(data type, ularni farqlari(list, dict, ser, tuple), function turlari)
4. Python Opp(opp tamoyillari, _init_ haqida, meros olishni nechta turi bor, )
5. Sqlite va PostgreSQL - view, trigger, funksiya yozish, simple qismi
6. requests(ni) ishlatilib koสปrganligi
Davomini keyingi postlarda joylayman. Bular yodimda qolganlari.
Django va DRF boสปyicha kam savol berishdi deyarli yodimda qolmadi. Agarda yodimga tushsa ulashaman.
๐ @python_backend_dev
Meni tasavvurimdagi suhbat boสปlmadi toสปgสปrisi ๐. Lekin yaxshi, boสปladi.
1. Githubdagi loyihalar boสปyicha yani qaysi joyida nima ish qiganiz.
2. Python core(data type, ularni farqlari(list, dict, ser, tuple), function turlari)
4. Python Opp(opp tamoyillari, _init_ haqida, meros olishni nechta turi bor, )
5. Sqlite va PostgreSQL - view, trigger, funksiya yozish, simple qismi
6. requests(ni) ishlatilib koสปrganligi
Davomini keyingi postlarda joylayman. Bular yodimda qolganlari.
Django va DRF boสปyicha kam savol berishdi deyarli yodimda qolmadi. Agarda yodimga tushsa ulashaman.
๐ @python_backend_dev
๐5
shuffle() funktsiyasi
random modulining shuffle() funksiyasi o'zgaruvchan ketma-ketlikni aralashtirib yuborish uchun ishlatamiz.
Funktsiya hech narsani qaytarmaydi, lekin to'g'ridan-to'g'ri ketma-ketlik ob'ektining o'zini o'zgartiradi.
๐ @python_backend_dev
random modulining shuffle() funksiyasi o'zgaruvchan ketma-ketlikni aralashtirib yuborish uchun ishlatamiz.
Funktsiya hech narsani qaytarmaydi, lekin to'g'ridan-to'g'ri ketma-ketlik ob'ektining o'zini o'zgartiradi.
๐ @python_backend_dev
๐4
Twilio ya'ni Pythonda SMS xabar yuborish
Kutubxonani o'rnatish:
sizga kerakli account_sid va auth_token ni olishingiz kerak bo'ladi. Keyin esa quyidagi shablon asosida ishlaysiz.
Asosan ro'yxatdan o'tish qismida ishlatiladi.
๐ @python_backend_dev
Kutubxonani o'rnatish:
pip install twilio
Avvalo SMS yuborish uchun siz twilio.com saytidan ro'yxatdan o'tibsizga kerakli account_sid va auth_token ni olishingiz kerak bo'ladi. Keyin esa quyidagi shablon asosida ishlaysiz.
import os
from twilio.rest import Client
account_sid = "ACba1cf469702bb254c4aadc4ff437e930"
auth_token = "your_auth_token"
Loyihangizda Twiliodan foydalangan paytingiz albatta himoyalash esdan chiqmasligi lozim. #account_sid = os.environ['TWILIO_ACCOUNT_SID']
#auth_token = os.environ['TWILIO_AUTH_TOKEN']
client = Client(account_sid, auth_token)
message = client.iss.onessages.create(
from_="+99899XXXXXXX",
to="+99899XXXXXXX",
body="Hello my friend")
print(message.sid)
Buni qayerda ishlatamiz degan savolga Telegramdan ro'yxatdan o'tishda telefon raqamingizga SMS xabar kelganini va boshqa sayt va dasturlarda ham buni ko'rgansiz.Asosan ro'yxatdan o'tish qismida ishlatiladi.
๐ @python_backend_dev
๐3
Python Data Type Cheatsheet
Sizlarga foydali boสปladi degan umiddaman ๐
Suhbatda koสปpincha data typelarni farqini soสปrashadi shuni uchun ulashdim.
๐ @python_backend_dev
Sizlarga foydali boสปladi degan umiddaman ๐
Suhbatda koสปpincha data typelarni farqini soสปrashadi shuni uchun ulashdim.
๐ @python_backend_dev
๐4
PyAutoGUI aslida Windows, MacOS X va Linuxda ishlaydigan Python to'plami bo'lib , u sichqoncha kursorini siljitish va bosish hamda klaviatura tugmachalarini bosishni taqlid qilish imkoniyatini beradi.
Oสปrnatish:
Link: https://pyautogui.readthedocs.io/en/latest/
๐ @python_backend_dev
Oสปrnatish:
pip install PyAutoGUI
Ekranni screenshot qilishga yaxshi narsa ekan ๐Link: https://pyautogui.readthedocs.io/en/latest/
๐ @python_backend_dev
๐2
Python dasturlash tili ob'ektga yo'naltirilgan dasturlash (OOP) paradigmasini qo'llab-quvvatlaydigan til bo'lib, bir nechta meros olish imkoniyatini ham qo'llab-quvvatlaydi.
Ya'ni, bola sinfi funksionallikni birdan emas, balki bir nechta ota-onadan meros qilib olish qobiliyati. Buning yordamida biz kodni sodda va oson saqlash bilan murakkab tuzilmalarni yaratishimiz mumkin.
Va yozgan kodingizni test qilib ko'rishni ham o'rganib boring. Men bu yerda testni oddiy shart asosida tuzdim. Keyingi postda shu sinflarni haqiqiy test bilan testlab koสปramiz
๐ @python_backend_dev
Ya'ni, bola sinfi funksionallikni birdan emas, balki bir nechta ota-onadan meros qilib olish qobiliyati. Buning yordamida biz kodni sodda va oson saqlash bilan murakkab tuzilmalarni yaratishimiz mumkin.
Va yozgan kodingizni test qilib ko'rishni ham o'rganib boring. Men bu yerda testni oddiy shart asosida tuzdim. Keyingi postda shu sinflarni haqiqiy test bilan testlab koสปramiz
๐ @python_backend_dev
๐3
Bu test yuqoridagi postga bog'liq holda tuzilgan.
Agarda biron masala yoki loyiha ustida ishlayotgan bo'lsangiz, usha masalani testlab ko'ring bo'sh vaqt topsangiz albatta, kichik bo'lsada test yozishga odatlaning.
Menimcha juda ko'pchilik test yozib ko'rmagan. Meni o'zim deyarli test yozmayman, juda kam.
Xullas fikr va takliflar boสปlsa izohlar siz uchun tayyor turibdi ๐ Xayrli tun ๐
๐ @python_backend_dev
Agarda biron masala yoki loyiha ustida ishlayotgan bo'lsangiz, usha masalani testlab ko'ring bo'sh vaqt topsangiz albatta, kichik bo'lsada test yozishga odatlaning.
Menimcha juda ko'pchilik test yozib ko'rmagan. Meni o'zim deyarli test yozmayman, juda kam.
Xullas fikr va takliflar boสปlsa izohlar siz uchun tayyor turibdi ๐ Xayrli tun ๐
๐ @python_backend_dev
๐4
Qachonki sen C++ dan Pythonga o'tganingda.
C++ dasturlash tilini biladiganlar bormi?
๐ @python_backend_dev
C++ dasturlash tilini biladiganlar bormi?
๐ @python_backend_dev
๐2๐1
LeedCode masalasi. Buni oddiyroq ya'ni python modullari bilan ham yechsa bo'ladigan yechimi bor. Lekin u juda oddiy yechim.
Agarda bu yechimga tushunmayotgan bo'lsangiz usha oddiyroq usulini bilan yechib ko'ring.
Yechimingizni izohlarda kutaman ๐
๐ @python_backend_dev
Agarda bu yechimga tushunmayotgan bo'lsangiz usha oddiyroq usulini bilan yechib ko'ring.
Yechimingizni izohlarda kutaman ๐
๐ @python_backend_dev
๐3
Sets bir nechta elementlarni bitta o'zgaruvchida saqlash uchun ishlatiladi va dublikatlarni saqlamaydi.
Set tartibsiz , o'zgarmas va indekslanmagan to'plamdir.
Set elementini o'zgartirib bo'lmaydi lekin yangi element qo'shish va o'chirish mumkin.
Bugun remove va discard farqini koสปrib chiqamiz
remove() - agar o'chiriladigan element mavjud bo'lmasa, xatolik qaytaradi.
discard() - agar o'chiriladigan element mavjud bo'lmasa xatolik qaytarmaydi.
๐ @python_backend_dev
Set tartibsiz , o'zgarmas va indekslanmagan to'plamdir.
Set elementini o'zgartirib bo'lmaydi lekin yangi element qo'shish va o'chirish mumkin.
Bugun remove va discard farqini koสปrib chiqamiz
remove() - agar o'chiriladigan element mavjud bo'lmasa, xatolik qaytaradi.
discard() - agar o'chiriladigan element mavjud bo'lmasa xatolik qaytarmaydi.
๐ @python_backend_dev
๐3