مقدمهای بر متغیرها در جنگو
جنگو یا به انگلیسی Django یکی از محبوبترین فریمورکهای وب است که با زبان برنامهنویسی پایتون نوشته شده. یکی از پایههای اصلی هر زبان برنامهنویسی، متغیرها هستند. در جنگو، متغیرها نقشی کلیدی در ذخیره و مدیریت دادهها بازی میکنند. با کمک متغیرها، میتوانیم دادهها را در طول فرایند درخواست و پاسخ حفظ و بهکارگیری کنیم.
متغیرها در جنگو بیشتر در قالب کلاسهای مدل (Model Classes) تعریف میشوند. این کلاسها به ما امکان میدهند تا ساختار دادههای برنامه را مشخص و مدلسازی کنیم. هر مدل جنگو به نوعی نشاندهنده یک جدول در پایگاه داده است و متغیرها در قالب فیلدهای مدل ذخیره میشوند.
متغیرها نه تنها در مدلها، بلکه در قالب View ها و Template ها نیز بهکار میروند. در View ها میتوانیم با تعریف متغیرها دادههای لازم برای ارائه به کاربر را مدیریت کنیم. از سوی دیگر، در Template ها متغیرها برای نمایش دادههای داینامیک به کاربر استفاده میشوند. به این ترتیب میتوانیم دادهها را از View به Template انتقال دهیم.
استفاده صحیح از متغیرها در جنگو به ما کمک میکند که برنامههای تحت وب کارآمد و ماژولار ایجاد کنیم. این متغیرها به خصوص در زمانی که با دادههای زیادی سر و کار داریم یا نیاز به مدیریت وضعیت کاربر است، بسیار مفید اند.
کار با متغیرها در Template های جنگو
در جنگو، Template ها برای نمایش دادهها به کاربران استفاده میشوند. یکی از روشهای معمول انتقال داده به کاربر، استفاده از متغیرها در قالب Template ها است. برای اینکار، کافیست متغیر مورد نظر را در فایل HTML تعریف کنیم و از آن استفاده کنیم.
مثال عملی از متغیرها در جنگو
views.py:
from django.shortcuts import render
def home(request):
context = { 'name': 'Ali', 'age': 30 }
return render(request, 'home.html', context)
home.html:
<!DOCTYPE html>
<html>
<head><title>خانه</title></head>
<body>
<h2>خوش آمدید، {{ name }}!</h2>
<p>سن شما: {{ age }}</p>
</body>
</html>
توضیح خط به خط کد:
from django.shortcuts import render
ماژول render
برای رندرینگ Template ها استفاده میشود.
def home(request):
تعریف یک View به نام home
که درخواست کاربر را مدیریت میکند.
context = { 'name': 'Ali', 'age': 30 }
ایجاد یک دیکشنری به نام context
که دادهها را ذخیره میکند.
return render(request, 'home.html', context)
رندر کردن فایل home.html
به همراه دادههای context
.
کدهای داخلی home.html
استفاده از متغیرهای name
و age
در قالب HTML برای نمایش اطلاعات کاربر.