قالب‌های فرم با قابلیت استفادۀ مجدد یا Reusable Forms Templates

سلام

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

خیلی خوب! در فولدر مربوط به تمپلیت یک فولدر جدید به نام includes می‌سازیم.

درون آن، یک فایل به نام html ایجاد می کنیم.

templates/includes/form.html

حالا فایل قبلی با نام html را ویرایش می کنیم.

templates/new_topic.html

همانطور که از نام آن مشخص است؛ آمده ایم و کدهای HTML مربوط به فرم را درون فایل قبلی include کرده‌ایم.

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

  1. مثل همیشه نوبت به نوشتن تست می رسد:

boards/tests.py

در کد بالا برای اولین بار از تگ assertIsInstance  استفاده کرده ایم. با این کار یک ثابت فرم را در نظر گرفته و چک کرده ایم که یک NewTopicForm باشد. ضمناً در بخش آخر هم با استفاده از دستور   self.assertTrue(form.errors) مطمئن می شویم که فرمِ ما، در صورت نامعتبر بودن دیتا، خطاهای مربوطه را نشان دهد.

ترجمۀ اختصاصی توسط تمدن

 

مطلب بعدی:شمای کلی از اعتبارسنجی برنامه در جنگو

مطلب قبلی: زیباسازی فرم ها با Bootstrap

بدون دیدگاه

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

جنگو
ویوی شروع بازیابی پسورد

سلام نوشتن فایل قالب به ترتیب زیر: templates/password_reset_done.html {% extends ‘base_accounts.html’ %} {% block title %}Reset your password{% endblock %} {% block content %} <div class=”row justify-content-center”> <div class=”col-lg-4 col-md-6 col-sm-8″> <div class=”card”> <div class=”card-body”> <h3 class=”card-title”>Reset your password</h3> <p>Check your email for a link to reset your password. If …

جنگو
ویوی بازیابی پسورد

سلام فایل زیر را ویرایش می کنیم. templates/password_reset.html {% extends ‘base_accounts.html’ %} {% block title %}Reset your password{% endblock %} {% block content %} <div class=”row justify-content-center”> <div class=”col-lg-4 col-md-6 col-sm-8″> <div class=”card”> <div class=”card-body”> <h3 class=”card-title”>Reset your password</h3> <p>Enter your email address and we will send you a link …

جنگو
پیکربندی مسیرها

سلام بازیابی پسورد به چهار ویو احتیاج دارد. یک صفحه با یک فرم برای شروع پروسه یک صفحه که به کاربر نشان دهد بازیابی پسورد شروع شده و مثلاً لازم است اسپم ایمیل خود را هم چک کند. صفحه ای برای چک توکن ارسال‌شده توسط ایمیل صفحه ای که به …

هرگونه استفادۀ از این آموزش به صورت رایگان و با ارجاع به تمدن جایز است.