Accounts: foydalanuvchilar bilan ishlash: accounts deb nomlangan app yaratamiz va uni settings fayliga qo’shib olamiz va accounts appdagi model ni shakllantirib olamiz



Download 0,57 Mb.
bet1/2
Sana15.06.2022
Hajmi0,57 Mb.
#672130
  1   2
Bog'liq
blog site 2


Blog site
Accounts: foydalanuvchilar bilan ishlash: accounts deb nomlangan app yaratamiz va uni settings fayliga qo’shib olamiz va accounts appdagi model ni shakllantirib olamiz.
Model yaratishda AbstractUser dan meros olamiz uning uchun abstractuserni import qilib olishimiz kerak bo’ladi.
from django.contrib.auth.models import AbstractUser.

Model ham tayyor bu yerda help_text ning vazifasi foydalanuchiga qanday username yoki boshqa narsa kiritish kerakligini aytish.
Error_messages ning vazifasi esa agar foydalanuchi bazada mavjuda username kiritsa bunday foydalanuvchi mavjudligini bildiradi.

Endi blog nomli app yaratamiz va uning ham modelini shakllantirib olamiz.


Blog app dagi modellar nimalardan iborat bo’ladi:
Blog, category, comment, tag.
Categoriyani shakllantirishdan boshlaymiz.

User avval yaratgan CustomUser ga ManyToMany orqali bog’lanadi.
Tag ni shakllantiramiz.

Blogni shakllantiramiz.



va commentni shakllantirib olamiz.

Agar admin tomonidan ma’lumotlarni formatlab qo’shmoqchi bo’lsak skeditor paketini o’rnatishimiz kerak bo’ladi.
Buni qanday o’rnatamiz?
pip install django-ckeditor  qilib o’rnatib olamiz va settingsga ulaymiz.



Agar loyihada media fayllar ham qatnashadigan bo’lsa asosiy urlga ham qo’shib qo’yamiz.

Model qismi tugadi endi blogni shakllantirishni boshlaymiz.
Avvalgi blog siteni funksiya yordamida tuzgan edik endi class lar yordamida tuzamiz buning uchun
from django.views import View
ni import qilamiz va View clasidan meros olib classlarimizni yozamiz.
Avval BaseView noli class yaratib olamiz va unga categoriya va teglar uchun metodlar yozamiz.
class BaseView:
def category(self):
categories = Category.objects.all()
return categories

def tag(self):


tags = Tag.objects.all()
return tags
bu classdan maqsad bizda tag va kategoriyalar ko’p uchraydi va ularni ko’p classlarda takror takror yozishga to’g’ri keladi shuni oldini olish uchun bu BaseView clasi yozildi va boshqa class larga kerak bo’lgandi meros olib ketilsa kifoya.
Siteni homepage qismi uchun class:
class BlogList(View, BaseView):
def get(self, request):
context = {}
context['blogs'] = Blog.objects.all()
context['categories'] = self.category()
context['tags'] = self.tag()
return render(request, 'blog_list.html', context)
ko’rinib turibdiki BlogList clasida BaseView dan meros olib foydalanildi.
Endi BlogList clasini urlga ulaymiz va html file yaratib olamiz.

Download 0,57 Mb.

Do'stlaringiz bilan baham:
  1   2




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish