یکی از جنبههای مهم هر وبسایت، طراحی طراحی فرم های زیبا در جنگو با Django Crispy Forms که یک کتابخانه است که به شما این امکان را میدهد تا فرمهای زیبایی طراحی کرده و تجربه کاربری بهتری ارائه دهید. این کتابخانه به طور خاص به توسعهدهندگان جنگو کمک میکند تا از فریمورکهای CSS مانند Bootstrap استفاده کنند و فرمهای خود را به بهترین شکل ممکن نمایش دهند.
سرفصل های مقاله
نصب و راهاندازی
برای نصب Django Crispy Forms، میتوانید از pip استفاده کنید:
همچنین داکیومنت کتابخانه Django Crispy Forms
pip install django-crispy-forms
سپس، باید Crispy Forms را به لیست INSTALLED_APPS اضافه کنید:
INSTALLED_APPS = [
...
'crispy_forms',
]
باید فریمورک CSS مورد نظر خود (Bootstrap، Uni-form و غیره) را نیز مشخص کنید:
CRISPY_TEMPLATE_PACK = 'bootstrap4'
ویژگیهای اصلی
Django Crispy Forms ویژگیهای متفاوتی ارائه میدهد که شامل موارد زیر میشود:
- ادغام ساده با فریمورکهای CSS: با استفاده از Crispy Forms میتوانید به راحتی از Bootstrap برای طراحی فرمهای خود استفاده کنید.
- سفارشیسازی سهولت: ویژگیهای سفارشیسازی بسیار زیادی برای کاربران فراهم میشود.
- فرمهای پیچیده و چند مرحلهای: با استفاده از این کتابخانه میتوانید فرمهای پیچیده و چند مرحلهای ایجاد کنید که کاربران را بهتر در تجربه ارسال اطلاعات یاری رساند.
نحوه استفاده از Crispy Forms
1. ساخت فرم
ابتدا یک فرم میسازیم. در فایل forms.py:
from django import forms
class MyForm(forms.Form):
name = forms.CharField(label=‘Name’, max_length=100)
email = forms.EmailField(label=‘Email’)
2. استفاده از Crispy Forms در Template
در Template خود، میتوانید از Crispy Forms برای نمایش فرمها استفاده کنید:
{% load crispy_forms_tags %}
<form method=“post”>
{% csrf_token %}
{{ form|crispy }}
<button type=“submit”>Submit</button>
</form>
3. سفارشیسازی فرم
میتوانید به راحتی CSS را به فرم خود اضافه کنید:
class MyForm(forms.Form):
name = forms.CharField(label='Name', widget=forms.TextInput(attrs={'class': 'form-control'}))
email = forms.EmailField(label='Email', widget=forms.EmailInput(attrs={'class': 'form-control'}))
نتیجهگیری
Django Crispy Forms یک ابزار بسیار مؤثر برای طراحی فرم های زیبا در جنگو است که با استفاده از این کتابخانه، میتوانید به سرعت و به سادگی فرمها را طراحی کنید و تجربه کاربری بهتری برای کاربران خود ارائه دهید. اگر شما به دنبال بهبود ظاهری و کارایی فرمهای خود هستید، Crispy Forms انتخاب مناسبی برای شما خواهد بود.