این سایت از کوکی استفاده می کند. ادامه مرور در این سایت به منزله این است که با استفاده کوکی ها توسط ما موافقت کرده اید.

 

خوش آمدید به انجمن تخصصی پایتون و جنگو (پایتونی ها)

لطفاً برای دسترسی به تمامی بخش های سایت مراحل ثبت نام و ایجاد حساب کاربری را طی نمایید.


توضیحات

در قسمت چهارم به شما نحوه ایجاد مدل مربوط به ساخت وبلاگ با جنگو رو آموزش می دهیم .

با عرض سلام خدمت پایتونی های عزیز .

امیدوارم موفق و پیروز باشید .

در قسمت چهارم از سری آموزش پروژه محور آموزش طراحی وبلاگ ساده با جنگو در خدمت شما هستیم . اگر مایل به دیدن آموزش های پروژه محور جنگو هستید به این لینک مراجعه کنید .

در قسمت چهارم که یکی از مهمترین بخش های طراحی سایت با جنگوست ، به تعریف مدل برای وبلاگمون می پردازیم . ما میخوایم با این مدل ، دیتابیس مربوط به App وبلاگ رو ایجاد کنیم تا اطلاعات این App بر روی اون ذخیره بشه .

 

نوشتن مدل مربوط به App وبلاگ

برای طراحی سایت با جنگو البته در شروع کار نیازی نیست که ما خیلی خودمون رو درگیر دیتابیس های مختلف نظیر SQL و ... کنیم . اصلا لازم نیست شما کلی کد SQL شروع کنید به نوشتن . 

ما فقط مدل مناسب با خواسته مون رو مینویسم . وظیفه این مدل ها ایجاد جدول های مناسب در دیتابیس هست تا اطلاعات بر روی این جدول ها ذخیره بشن و هر وقت ما به هر بخشی از این جداول احتیاجی داشتیم ، با زدن کوئری مناسب ، به اون اطلاعات دسترسی پیدا می کنیم .

 

خب برای شروع شما به فایل models.py در App‌ بلاگ خودتون برید . ( دقت کنید که یک همچین فایلی هم در روت اصلی پروژه هست ، فعلا منظور ما فایل مدل App بلاگ هست )

4-1.png

خب حالا کدهای زیر رو داخل این فایل کپی کنید :

from django.db import models

class Post(models.Model):
	title = models.CharField(max_length=255)
	slug = models.SlugField(unique=True, max_length=255)
	description = models.CharField(max_length=255)
	content = models.TextField()
	created = models.DateTimeField(auto_now_add=True)

 

این کدها چیکار می کنند ؟

خط اول این کد ، داره از django.db ایمپورت میکنه models رو که بتونیم از مدل استفاده کنیم .

در خط بعدی یک کلاس ایجاد کردیم با نام پست . همانطور که از نامش پیداست مربوط به نوشته ها هست . وقتی که ما میخوایم داخل وبلاگ نوشته ایجاد کنیم احتیاج به یک بستر دیتابیس داریم . الان در حال ایجاد کردن این بستر هستیم .

دقت کنید که نام اول کلاس باید با حروف بزرگ نوشته شود و اینکه چه نامی بزاریم مهم نیست . فقط سعی کنید که مرتبط انتخاب کنید .

 

خب در ۶ خط بعدی ما دستور دادیم که ۶ سطر برای جدولمون تو دیتابیس ایجاد بشه . این سطر ها بر اساس نیاز App‌ شما ایجاد میشن . این تعداد چیز ثابتی نیست . شما می توانید کمتر یا بیشتر سطر و جدول ایجاد کنید البته متناسب با نیازتون .

 

Title = در جدول Post ما احتیاج به سطری داریم که نام نوشته ها ( عنوان نوشته ها ) مون در اون ذخیره بشن . چون قطعا هر نوشته یک نام داره . نوع این جدول رو هم CharField انتخاب کردیم چون نام نوشته ما استرینگ هست . یعنی از حروف و یا اعداد قرار تشکیل بشه . ماکزیمم تعداد رو هم ۲۵۵ در نظر گرفتیم .

Slug = هر نوشته ما به تگ احتیاج داره . این تگ ها در امر سئو و جستجو و ... در سایت بسیار با اهمیت هستند . نوع این سطر از جدول دیتابیس مون رو SlugField انتخاب کردیم . سپس مشخص کردیم که حتما حتما باید به صورت یونیک و منحصر به فرد باشه ( یعنی تگ تکراری نداریم ) و ماکزیمم تعداد اون هم ۲۵۵ باشه .

Description = هر نوشته ما احتمالا توضیحات داره . به بالای همین آموزش رجوع کنید خواهید دید که در یک باکس به صورت مختصر راجب این آموزش یک توضیح یک خطی نوشته شده . پس برای این هم یک سطر ایجاد می کنیم . مثل تایتل

Content = خب بخش اصلی جدول ما همین کانتنت هست . همون بدنه نوشته ما . متن اصلی نوشته . براش یک سطر ایجاد کردیم و نوع اون رو TextField در نظر گرفتیم چون قرار هست نوشته در اون قرار بگیره . ماکزیمم مقدار اون هم روی ۲۵۵ ست کردیم .

Created = فیلد بعدی مربوط به تاریخ ایجاد نوشته هست . ما احتیاج داریم که هر زمانی یک نوشته در وبلاگ ما ایجاد میشه ، تاریخ اون ثبت بشه . چون قطعا بهش نیاز پیدا میکنیم . برای همین این سطر رو در جدولمون ایجاد کردیم از نوع DateTimeField که تاریخ و زمان رو برای ما ثبت کنه . مقدار auto_now_add=True باعث میشه که همیشه از تاریخ فعلی هنگام ذخیره شدن به صورت خودکار استفاده کنه .

 

خب بسیار عالی . شما تونستید مدل مربوط به وبلاگ خودتون رو درست کنید به کمک فیلدها و خواص آنها .

حالا کدهای زیر رو به ترتیب داخل ترمینال وارد کنید تا تغییرات شما در دیتابیس ایجاد و ذخیره شوند :

$ python manage.py makemigrations
$ python manage.py migrate

 

اگر مسیر رو طبق آموزش پیش اومده باشید باید با تصویر زیر روبرو بشید :

4-2.png

 

خب همانطور که میبینید علاوه بر جدول مربوط به App بلاگ ، تغییرات مربوط به اپ های پیش فرض جنگو نیز در دیتابیس ایجاد و ثبت شدن .

خیلی خب . شما تقریبا به صورت خیلی ساده یاد گرفتید که چطوری باید برای App های پروژه تون دیتابیس درست کنید .

اگر سوالی یا مشکلی درباره این آموزش داشتید در بخش تاپیک پشتیبانی این آموزش مطرح کنید تا دوستان شما به شما پاسخ بدن .

خسته نباشید .

 

 

جلسه چهارم از سری آموزش پروژه محور ساخت یک وبلاگ ساده با جنگو به پایان رسید .

موفق و پیروز باشید 

پایتونی ها


پسند شده توسط 2 کاربر


0 دیدگاه

هیچ دیدگاهی برای نمایش وجود دارد.

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری