به دنیای Django خوش آمدید! اگر به دنبال ساخت وب اپلیکیشن های قدرتمند و مقیاس پذیر با پایتون هستید، جای درستی آمده اید. Django یک فریم ورک وب سطح بالا است که به شما کمک می کند با سرعت و کارایی بیشتری برنامه های وب خود را توسعه دهید. در این آموزش، ما به تمام جنبه های کلیدی Django خواهیم پرداخت، از نصب و راه اندازی اولیه تا ساخت برنامه های پیچیده.
Django چیست؟ Django یک فریم ورک وب منبع باز و رایگان است که به زبان پایتون نوشته شده است. این فریم ورک از الگوی معماری Model-View-Template (MVT) پیروی می کند که توسعه وب را سازماندهی و تسریع می کند. Django با ارائه مجموعه ای غنی از ابزارها و کتابخانه ها، به شما امکان می دهد تا برنامه های وب پیچیده را به سرعت و با اطمینان ایجاد کنید.
چرا Django را انتخاب کنیم؟
قبل از شروع کار با Django، باید آن را نصب کنید. برای این کار، مراحل زیر را دنبال کنید:
pip install Django
python -m django --version
اکنون که Django را نصب کرده اید، می توانید یک پروژه جدید Django ایجاد کنید. برای این کار، مراحل زیر را دنبال کنید:
django-admin startproject myproject
در این دستور، `myproject` نام پروژه شماست. شما می توانید نام دلخواه خود را انتخاب کنید.
در Django، برنامه ها (Apps) اجزای قابل استفاده مجدد هستند که عملکردهای خاصی را ارائه می دهند. برای مثال، می توانید یک برنامه برای مدیریت کاربران، یک برنامه برای مدیریت بلاگ و یک برنامه برای مدیریت محصولات ایجاد کنید. برای ایجاد یک برنامه جدید، مراحل زیر را دنبال کنید:
python manage.py startapp myapp
در این دستور، `myapp` نام برنامه شماست. شما می توانید نام دلخواه خود را انتخاب کنید.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myapp', # برنامه جدید شما
]
مدل ها در Django، نمایانگر ساختار داده های شما هستند. هر مدل معمولاً یک جدول در پایگاه داده را نشان می دهد و فیلدهای مدل، ستون های جدول را نشان می دهند. Django از یک سیستم ORM (Object-Relational Mapper) استفاده می کند که به شما امکان می دهد با داده ها به صورت شیءگرا تعامل داشته باشید، بدون اینکه نیاز به نوشتن SQL مستقیم داشته باشید.
تعریف مدل:
برای تعریف یک مدل، یک کلاس در فایل `models.py` برنامه خود ایجاد کنید که از کلاس `models.Model` ارث بری کند. سپس، فیلدهای مدل را به عنوان ویژگی های کلاس تعریف کنید. برای مثال:
from django.db import models
class Article(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
pub_date = models.DateTimeField('date published')
def __str__(self):
return self.title
در این مثال، ما یک مدل به نام `Article` تعریف کرده ایم که دارای سه فیلد است: `title` (عنوان مقاله)، `content` (محتوای مقاله) و `pub_date` (تاریخ انتشار مقاله).
نماها در Django، منطق برنامه شما را مدیریت می کنند. یک نما، درخواست کاربر را دریافت می کند، داده ها را از مدل ها بازیابی می کند، داده ها را به قالب ها ارسال می کند و یک پاسخ به کاربر برمی گرداند.
تعریف نما:
برای تعریف یک نما، یک تابع یا کلاس در فایل `views.py` برنامه خود ایجاد کنید. یک نما می تواند یک درخواست HTTP را به عنوان ورودی دریافت کند و یک پاسخ HTTP را به عنوان خروجی برگرداند. برای مثال:
from django.shortcuts import render
from .models import Article
def article_list(request):
articles = Article.objects.all()
return render(request, 'myapp/article_list.html', {'articles': articles})
در این مثال، ما یک نما به نام `article_list` تعریف کرده ایم که تمام مقالات را از پایگاه داده بازیابی می کند و آنها را به قالب `myapp/article_list.html` ارسال می کند.
قالب ها در Django، برای نمایش داده ها به کاربر استفاده می شوند. یک قالب، یک فایل HTML است که حاوی متغیرها و تگ های قالب است که توسط Django جایگزین می شوند.
ایجاد قالب:
برای ایجاد یک قالب، یک فایل HTML در دایرکتوری `templates` برنامه خود ایجاد کنید. در این فایل، می توانید از متغیرها و تگ های قالب Django برای نمایش داده ها استفاده کنید. برای مثال:
<!DOCTYPE html>
<html>
<head>
<title>Article List</title>
</head>
<body>
<h1>Article List</h1>
<ul>
{% for article in articles %}
<li><a href="{% url 'article_detail' article.id %}">{{ article.title }}</a></li>
{% endfor %}
</ul>
</body>
</html>
در این مثال، ما یک قالب به نام `article_list.html` ایجاد کرده ایم که لیست مقالات را نمایش می دهد.
مسیریابی در Django، فرآیند نگاشت URLها به نماها است. به عبارت دیگر، زمانی که کاربر یک URL را در مرورگر خود وارد می کند، Django از فایل `urls.py` برای تعیین اینکه کدام نما باید به درخواست کاربر پاسخ دهد، استفاده می کند.
تعریف مسیر:
برای تعریف یک مسیر، یک لیست از الگوهای URL را در فایل `urls.py` برنامه خود ایجاد کنید. هر الگو URL، یک URL را به یک نما نگاشت می کند. برای مثال:
from django.urls import path
from . import views
urlpatterns = [
path('articles/', views.article_list, name='article_list'),
path('articles/<int:article_id>/', views.article_detail, name='article_detail'),
]
در این مثال، ما دو مسیر تعریف کرده ایم: یکی برای نمایش لیست مقالات و دیگری برای نمایش جزئیات یک مقاله خاص.
فرم ها در Django، برای دریافت ورودی از کاربر استفاده می شوند. Django یک سیستم فرم قوی ارائه می دهد که به شما امکان می دهد فرم های HTML را به راحتی ایجاد، اعتبارسنجی و پردازش کنید.
ایجاد فرم:
برای ایجاد یک فرم، یک کلاس در فایل `forms.py` برنامه خود ایجاد کنید که از کلاس `forms.Form` یا `forms.ModelForm` ارث بری کند. سپس، فیلدهای فرم را به عنوان ویژگی های کلاس تعریف کنید. برای مثال:
from django import forms
class ArticleForm(forms.Form):
title = forms.CharField(label='Title', max_length=200)
content = forms.CharField(label='Content', widget=forms.Textarea)
Django دارای یک سیستم احراز هویت داخلی است که به شما امکان می دهد کاربران را ثبت نام، ورود و خروج کنید و دسترسی آنها را به بخش های مختلف برنامه خود کنترل کنید.
ثبت نام کاربر:
برای ثبت نام کاربر، می توانید از فرم `UserCreationForm` استفاده کنید. این فرم، فیلدهای مورد نیاز برای ایجاد یک حساب کاربری جدید را نمایش می دهد.
تیم متخصص ما آماده ارائه خدمات سئو و بهینه سازی وب سایت شماست. همین امروز با ما تماس بگیرید!
شماره تماس: 09190994063 - 09376846692