طراحی سایت | طراحی اسلایدر | خدمات سئو | سئو وبسایت | خدمات طراحی وبسایت | پشتیبانی وبسایت |
0 محصولات نمایش سبد خرید

هیچ محصولی در سبد خرید نیست.

آشنایی با جنگو | ۱٫۲ الگوی طراحی MVC

Model–view–controller

Model–view–controller بیایید با مثال سریع که تفاوت بین رویکرد قبلی و آن را نشان می دهد ، غرق شویم
با استفاده از یک چارچوب وب انجام شد. در اینجا چگونگی نوشتن کد CGI قبلی با استفاده از جنگو آورده شده است:

# models.py (the database tables)
from django.db import models
class Book(models.Model):
 name = models.CharField(maxlength=50)
 pub_date = models.DateField()
# views.py (the business logic)
from django.shortcuts import render_to_response
from models import Book
def latest_books(request):
 book_list = Book.objects.order_by('-pub_date')[:10]
 return render_to_response('latest_books.html', {'book_list': book_list})
# urls.py (the URL configuration)
from django.conf.urls.defaults import *
import views
urlpatterns = patterns('',
 (r'latest/$', views.latest_books),
# latest_books.html (the template)
<html><head><title>Books</title></head>
<body>
<h1>Books</h1>
<ul>
{% for book in book_list %}
<li>{{ book.name }}</li>
{% endfor %}
</ul>
</body></html>

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

model.py

شامل توضیحات جدول بانک اطلاعاتی ، به عنوان کلاس پایتون است. به این گفته می شود
مدل. با استفاده از این کلاس ، می توانید با استفاده از پرونده ، سوابق موجود در پایگاه داده خود را ایجاد ، بازیابی ، به روزرسانی و حذف کنید
کد پایتون ساده به جای نوشتن عبارت های تکراری SQL.

پرونده views.py در عملکرد جدیدترین_کتابها () دارای منطق کسب و کار برای این صفحه است.
این تابع یک نمای نامیده می شود.

پرونده urls.py مشخص می کند که کدام نمای برای الگوی URL داده شده فراخوانی می شود. در این حالت ، URL


آخرین توسط تابع new_books () مدیریت خواهد شد.



new_books.html یک الگوی HTML است که طراحی صفحه را توصیف می کند.
روی هم رفته ، این قطعات به سادگی از الگوی طراحی Model-View-Controller (MVC) پیروی می کنند. به عبارت ساده ،
Model–view–controller روش توسعه نرم افزار را به گونه ای تعریف می کند که کد تعریف و دستیابی به داده ها (مدل) باشد
جدا از منطق مسیریابی درخواست (کنترل کننده) ، که به نوبه خود از رابط کاربر جدا است (
چشم انداز).
یک مزیت اصلی چنین رویکردی این است که اجزای کاملاً با هم جفت می شوند. یعنی هر قطعه مجزا از a
برنامه وب مبتنی بر Django دارای یک هدف کلیدی است و بدون آن می تواند به طور مستقل تغییر کند
روی قطعات دیگر تأثیر می گذارد به عنوان مثال ، یک توسعه دهنده می تواند URL را برای قسمت معینی از برنامه تغییر دهد
بدون اینکه روی اجرای اساسی تأثیر بگذارد. یک طراح می تواند بدون نیاز به HTML HTML صفحه را تغییر دهد
کد پایتون را که ارائه می دهد لمس کنید. یک مدیر پایگاه داده می تواند یک جدول دیتابیس را تغییر نام دهد و آن را مشخص کند
به جای نیاز به جستجو و جایگزینی از طریق دوجین پرونده ، در یک مکان تغییر دهید.
در این کتاب ، هر مؤلفه این پشته فصل خاص خود را دریافت می کند. به عنوان مثال ، فصل ۳ دیدگاه ها را شامل می شود ، فصل
۴ قالب را پوشش می دهد ، و فصل ۵ مدل ها را پوشش می دهد. فصل ۵ همچنین در مورد فلسفه MVC جنگو در
عمق

دیدگاه‌های نوشته

Share via
ارسال این به یک دوست