دوره جنگو ۴: فرم‌ها و مدل‌فرم‌ها (۲۰۲۳)

انتخاب پلن

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

نام محصول به انگلیسی دانلود Pluralsight - Django 4 Forms and ModelForms 2023-10 - دانلود رایگان نرم افزار
نام محصول به فارسی دوره جنگو ۴: فرم‌ها و مدل‌فرم‌ها (۲۰۲۳) بر روی فلش 32GB
زبان انگلیسی با زیرنویس فارسی
نوع محصول آموزش ویدیویی
نحوه تحویل به صورت ارائه بر روی فلش مموری
توجه مهم:

این دوره آموزشی به صورت دانلودی ارائه می‌شود و همراه با زیرنویس فارسی است.

حداکثر تا ۲۴ ساعت پس از ثبت سفارش، لینک اختصاصی دوره برای شما ساخته و ارسال خواهد شد.


📚 محتوای این محصول آموزشی (پکیج کامل)

علاوه بر دوره ویدیویی، برای یادگیری عمیق‌تر و تسلط کامل بر مباحث مجموعه‌ای از کتاب‌های آموزشی نیز ارائه می‌شود.

🎯 این بسته یک دورهٔ آموزشی کامل و چندلایه است؛ شامل ویدیوهای آموزشی، کتاب‌ها، تمرین‌ها و خودآزمایی.

ℹ️ نکات مهم هنگام خرید

  • این محصول به صورت فایل دانلودی کامل ارائه می‌شود.
  • توجه: لینک‌های اختصاصی دوره طی حداکثر 24 ساعت پس از ثبت سفارش ارسال می‌شوند.
  • دقت کنید لینک ها به شماره موبایل شما ارسال می شوند. پس در ارائه شماره موبایل صحیح دقت کنید.
  • برای راهنمایی در مورد نحوه دانلود به شماره 09395106248 پیامک دهید یا تماس بگیرید. (ایده آل ترین گزینه ارسال پیام در یکی از پیام رسان ها به همین شماره است تا سریعا لینک های محصول همان جا برای شما ارسال گردد.)
  • اگر پرداخت انجام شده ولی بعد از 24 ساعت هنوز لینک‌ها را دریافت نکرده‌اید، نام و نام خانوادگی و نام محصول را پیامک کنید تا لینک‌ها دوباره ارسال شوند.

💬 راه‌های ارتباطی پشتیبانی:
واتس‌اپ یا هر پیام رسان داخلی یا پیامک: 09395106248
تلگرام: @ma_limbs

دوره جنگو ۴: فرم‌ها و مدل‌فرم‌ها (۲۰۲۳) بر روی فلش 32GB

چارچوب جنگو (Django) به عنوان یکی از قدرتمندترین و پرکاربردترین فریم‌ورک‌های توسعه وب با پایتون، به دلیل قابلیت‌ها و ابزارهای جامع خود، همواره مورد توجه برنامه‌نویسان قرار گرفته است. یکی از هسته‌های اصلی هر برنامه وب تعاملی، سیستم فرم‌ها و روش جمع‌آوری اطلاعات از کاربران است. دوره "جنگو ۴: فرم‌ها و مدل‌فرم‌ها (۲۰۲۳)" به طور اختصاصی بر همین جنبه کلیدی تمرکز دارد و شما را با تمام جنبه‌های ایجاد، مدیریت و اعتبارسنجی فرم‌ها در جنگو نسخه ۴ آشنا می‌سازد.

این دوره جامع، که بر روی یک فلش مموری ۳۲ گیگابایتی ارائه می‌شود و قابلیت دانلود ندارد، تضمین می‌کند که شما به یک منبع آموزشی کامل و پایدار دسترسی خواهید داشت. از ساخت فرم‌های ساده گرفته تا استفاده پیشرفته از ModelForms که تعامل با پایگاه داده را به شکل شگفت‌انگیزی ساده می‌کند، همه چیز در این مجموعه پوشش داده شده است. با یادگیری این مباحث، قادر خواهید بود فرم‌های ورود اطلاعات کارآمد، امن و با تجربه کاربری عالی را در پروژه‌های جنگو خود پیاده‌سازی کنید.

چرا یادگیری فرم‌ها و مدل‌فرم‌ها در جنگو حیاتی است؟

فرم‌ها قلب تپنده تعامل کاربر با هر اپلیکیشن وب هستند. از ثبت‌نام کاربران و ورود به سیستم گرفته تا ارسال نظرات، ایجاد پست‌های وبلاگ، یا به‌روزرسانی اطلاعات پروفایل، همگی از طریق فرم‌ها انجام می‌شوند. جنگو با سیستم فرم‌های قدرتمند خود، نه تنها فرآیند ساخت فرم‌ها را ساده می‌کند، بلکه اطمینان می‌دهد که اطلاعات ورودی از نظر امنیت و صحت اعتبارسنجی شده‌اند. ModelForms نیز یک لایه انتزاعی شگفت‌انگیز است که به شما اجازه می‌دهد تنها با چند خط کد، فرم‌هایی بر اساس مدل‌های پایگاه داده خود ایجاد کنید و عملیات CRUD (ایجاد، خواندن، به‌روزرسانی، حذف) را به شکلی کارآمد و بدون دردسر پیاده‌سازی نمایید.

اهداف کلیدی دوره: چه چیزی خواهید آموخت؟

پس از اتمام این دوره، شما به تسلط کاملی بر مباحث فرم‌ها و مدل‌فرم‌ها در جنگو ۴ دست خواهید یافت و قادر خواهید بود:

  • آشنایی با اصول فرم‌ها: درک معماری و نحوه کار فرم‌ها در جنگو، از جمله تفاوت Form و ModelForm.
  • ساخت فرم‌های سفارشی: ایجاد فرم‌های مستقل با استفاده از کلاس forms.Form و انواع فیلدهای موجود (Text, Email, Number, Choice و...).
  • اعتبارسنجی اطلاعات: اعمال قوانین اعتبارسنجی پیش‌فرض جنگو و ایجاد اعتبارسنجی‌های سفارشی برای داده‌های ورودی.
  • رندر کردن فرم‌ها: نمایش فرم‌ها در قالب‌ها به روش‌های مختلف (as_p, as_ul, as_table) و همچنین رندر دستی برای کنترل کامل بر ظاهر.
  • پردازش درخواست‌های فرم: مدیریت ارسال داده‌ها از طریق متدهای GET و POST، بررسی اعتبار فرم با is_valid() و ذخیره‌سازی اطلاعات.
  • کار با ModelForms: یادگیری نحوه ایجاد فرم‌هایی که مستقیماً به مدل‌های پایگاه داده متصل هستند و عملیات CRUD را تسهیل می‌کنند.
  • سفارشی‌سازی ModelForms: تنظیم فیلدهای نمایش داده شده، اضافه کردن فیلدهای اضافی، و تغییر ویجت‌ها (Widgets) برای ModelForms.
  • آپلود فایل‌ها: پیاده‌سازی فرم‌هایی برای آپلود فایل‌ها و تصاویر به سرور و ذخیره‌سازی آن‌ها.
  • کار با Formsets: مدیریت مجموعه‌ای از فرم‌ها به صورت پویا، مناسب برای سناریوهایی مانند اضافه کردن چندین آیتم به صورت همزمان.
  • استفاده از ویجت‌های پیشرفته و سفارشی: آشنایی با ویجت‌های مختلف و نحوه ساخت ویجت‌های سفارشی برای کنترل بیشتر بر ورودی‌های کاربر.

پیش‌نیازهای دوره

برای کسب بیشترین بهره‌وری از این دوره آموزشی، توصیه می‌شود پیش‌زمینه‌های زیر را داشته باشید:

  • آشنایی با پایتون: درک مفاهیم پایه‌ای پایتون مانند متغیرها، توابع، کلاس‌ها و ساختارهای داده.
  • مفاهیم اولیه جنگو: آشنایی با معماری MVT (Model-View-Template) جنگو، نحوه کار با مدل‌ها، ساخت Viewها و Templates. (نیازی به تسلط کامل نیست، اما درک کلی کمک‌کننده است).
  • HTML و CSS مقدماتی: آشنایی با ساختار صفحات وب و استایل‌دهی اولیه برای درک بهتر رندر فرم‌ها.

سرفصل‌های جامع دوره

این دوره به صورت ساختاریافته و با تمرکز بر مفاهیم عملی طراحی شده است. سرفصل‌های اصلی به شرح زیر می‌باشند:

  • مقدمه‌ای بر فرم‌ها در جنگو:
    • چرا به فرم‌ها نیاز داریم؟
    • جریان کاری فرم‌ها در جنگو.
    • بررسی امنیت فرم‌ها (CSRF و...).
  • ساخت فرم‌های پایه:
    • تعریف کلاس forms.Form.
    • معرفی انواع فیلدها (CharField, IntegerField, EmailField, DateField و...).
    • استفاده از ویجت‌ها برای تغییر ظاهر ورودی‌ها.
    • مثال عملی: ساخت فرم تماس با ما.
  • اعتبارسنجی فرم‌ها:
    • اعتبارسنجی‌های داخلی جنگو (max_length, min_value و...).
    • تعریف متدهای clean_() برای اعتبارسنجی فیلدهای خاص.
    • اعتبارسنجی در سطح کل فرم با متد clean().
    • نمایش خطاهای اعتبارسنجی به کاربر.
  • رندر و استایل‌دهی فرم‌ها:
    • روش‌های رندر سریع (as_p(), as_ul(), as_table()).
    • رندر دستی فیلدها برای کنترل کامل بر HTML.
    • اضافه کردن کلاس‌های CSS به ویجت‌ها.
  • مدیریت ارسال فرم و ذخیره‌سازی داده‌ها:
    • درک تفاوت درخواست‌های GET و POST.
    • بررسی request.POST و request.FILES.
    • استفاده از form.is_valid() و form.cleaned_data.
    • مثال عملی: پیاده‌سازی فرم ثبت‌نام کاربر.
  • مقدمه‌ای بر ModelForms:
    • چگونه ModelForms فرآیند توسعه را ساده می‌کنند.
    • ایجاد ModelForm از روی یک مدل موجود.
    • تنظیمات کلاس Meta (فیلدها، exclude و...).
    • مثال عملی: ساخت فرم برای ایجاد و ویرایش پست‌های وبلاگ.
  • سفارشی‌سازی پیشرفته ModelForms:
    • اضافه کردن فیلدهای غیرمدل به ModelForm.
    • تغییر ویجت‌ها در ModelForms.
    • اضافه کردن اعتبارسنجی‌های سفارشی به ModelForms.
    • کنترل بر روی برچسب‌ها (labels) و پیام‌های کمک (help_texts).
  • آپلود فایل‌ها و تصاویر:
    • مدیریت فیلدهای FileField و ImageField.
    • تنظیمات مربوط به MEDIA_ROOT و MEDIA_URL.
    • نمایش و حذف فایل‌های آپلود شده.
  • Formsets و Inline Formsets:
    • مدیریت مجموعه‌ای از فرم‌ها.
    • استفاده از BaseFormSet و modelformset_factory.
    • Inline Formsets برای مدیریت رابطه‌های یک به چند.
  • کار با ویجت‌های سفارشی و کتابخانه‌های جانبی (مانند Crispy Forms):
    • ساخت ویجت‌های کاملاً سفارشی.
    • معرفی Crispy Forms برای رندر زیباتر و آسان‌تر فرم‌ها.

مثال عملی: یک فرم تماس ساده

برای درک بهتر، بیایید یک مثال ساده از ساخت یک فرم در جنگو را مرور کنیم:

فرض کنید می‌خواهیم یک فرم تماس با ما داشته باشیم. ابتدا کلاس فرم را تعریف می‌کنیم:


# forms.py
from django import forms

class ContactForm(forms.Form):
    name = forms.CharField(label='نام شما', max_length=100)
    email = forms.EmailField(label='ایمیل', required=False)
    message = forms.CharField(label='پیام شما', widget=forms.Textarea)

    def clean_name(self):
        name = self.cleaned_data.get('name')
        if "badword" in name:
            raise forms.ValidationError("کلمه نامناسب یافت شد.")
        return name
    

سپس در views.py آن را پردازش می‌کنیم:


# views.py
from django.shortcuts import render, redirect
from .forms import ContactForm

def contact_view(request):
    if request.method == 'POST':
        form = ContactForm(request.POST)
        if form.is_valid():
            # داده‌ها معتبر هستند، می‌توانید اینجا آن‌ها را پردازش کنید
            name = form.cleaned_data['name']
            email = form.cleaned_data['email']
            message = form.cleaned_data['message']
            # مثلاً ارسال ایمیل یا ذخیره در دیتابیس
            print(f"نام: {name}, ایمیل: {email}, پیام: {message}")
            return redirect('success_page')
    else:
        form = ContactForm()
    return render(request, 'contact.html', {'form': form})
    

و در نهایت در contact.html آن را نمایش می‌دهیم:


<!-- contact.html -->
<form method="post">
    {% csrf_token %}
    {{ form.as_p }}
    <button type="submit">ارسال</button>
</form>
    

این مثال تنها گوشه‌ای از قابلیت‌های فرم‌ها در جنگو را نشان می‌دهد. در دوره، با جزئیات و سناریوهای پیچیده‌تر، این مباحث به طور کامل آموزش داده خواهند شد.

نتیجه‌گیری

دوره "جنگو ۴: فرم‌ها و مدل‌فرم‌ها (۲۰۲۳)" یک فرصت بی‌نظیر برای توسعه‌دهندگان جنگو است تا مهارت‌های خود را در یکی از مهم‌ترین و پرکاربردترین بخش‌های این فریم‌ورک ارتقا دهند. با تمرکز بر آخرین نسخه جنگو و ارائه مطالب به شیوه‌ای کاملاً عملی و کاربردی، این دوره شما را برای ساخت اپلیکیشن‌های وب پیچیده و تعاملی آماده می‌کند.

همین امروز با تهیه این مجموعه آموزشی ارزشمند که بر روی فلش مموری ۳۲ گیگابایتی به شما ارائه می‌شود، گامی مؤثر در مسیر تبدیل شدن به یک توسعه‌دهنده جنگو حرفه‌ای بردارید و پروژه‌های خود را به سطحی جدید ارتقا دهید. این دوره سرمایه‌گذاری هوشمندانه‌ای در مسیر پیشرفت شغلی و حرفه‌ای شما خواهد بود.

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.