جنگو

مهاجرت

سلام مهاجرت یکی از بخش ها و بحث های بنیادی در برنامه نویسی تحت وب با جنگو است. مهاجرت مربوط به توسعۀ مدل های مربوط به برنامه در شرایطی می شود که بعد از توسعۀ مدل ها، به صورت خودکار دیتابیس نیز خود را با مدل ها بروز رسانی کند …

جنگو

QuerySets

سلام در این قسمت می خواهیم APIهای مدل ها را واکاوی کنیم. در ابتدا قصد داریم ویوی مربوط به صفحۀ اصلی را بهبود بخشیم. باید سه قسمت را درست کنیم. نمایش تعداد پست های ارسالی در یک بورد. نمایش تعداد تاپیک های ارسالی در یک بورد. نمایش آخرین کاربری که …

جنگو

ویوی پاسخ به پست

سلام در این قسمت می خواهیم برای ارسال پاسخ به یک پست مشخص، ویوی جدید بسازیم. یک آدرس جدید اضافه می کنیم. myproject/urls.py url(r’^boards/(?P<pk>\d+)/topics/(?P<topic_pk>\d+)/reply/$’, views.reply_topic, name=’reply_topic’), یک فرم  جدید برای پاسخ به پست می سازیم. boards/forms.py (مشاهده کد کامل) from django import forms from .models import Post class PostForm(forms.ModelForm): class …

جنگو

ویوی پست های یک تاپیک

سلام براساس شمای کلی و وایرفریم زیر می خواهیم صفحه ای را بسازیم که در آن تمام پست های یک تاپیک به نمایش درآید. اول از  همه باید یک سری مسیر به برنامه اضافه کنیم. myproject/urls.py url(r’^boards/(?P<pk>\d+)/topics/(?P<topic_pk>\d+)/$’, views.topic_posts, name=’topic_posts’), همانطور که معلوم است در آدرس دهی بالا، از دو آرگومان …

جنگو

دسترسی به کاربر معتبر

سلام خوب! حالا وقت آن رسیده که در ویوی new_topic نام کاربر واردشده به سیستم را تنظیم کنیم. (در حال حاضر صرفاً نام اولین کاربر از دیتابیس گرفته و نمایش داده می شود.) boards/views.py (مشاهده کد کامل) from django.contrib.auth.decorators import login_required from django.shortcuts import get_object_or_404, redirect, render from .forms import …

جنگو

تست Login Required

سلام مثل همیشه نوبت نوشتن فایل تست مربوط به دکوراتور login_required@ شده اما قبل از آن می خواهیم فایل boards/tests/test_views.py را اندکی دستکاری کنیم. می خواهیم این فایل را به سه فایل جداگانه تقسیم کنیم. test_view_home.py شامل کلاس HomeTests (مشاهده کد کامل) test_view_board_topics.py شامل کلاس BoardTopicsTests (مشاهده کد کامل) test_view_new_topic.py …

جنگو

ویوهای محافظت شده | Protecting Views

سلام در این بخش باید از دسترسی کاربران غیرمجاز به ویوها جلوگیری کنیم. برای مثال فرم زیر برای ارسال پست جدید به کار می رود: در تصویر بالا، کاربری وارد سیستم نشده اما توانسته به فرم ارسال پست دسترسی پیدا کند. جنگو برای جلوگیری از این موضوع به صورت پیشفرض …

جنگو

مقدمه و مفهوم ORM

سلام در این فصل نحوۀ تعیین سطح دسترسی برای کاربران معتبر به فرم ها و ویوها را به شکل اصولی کار می کنیم و بعد از آن پست های یک تاپیک را به صورت لیستی نمایش می دهیم. در انتها برخی از ویژگی های Django ORM را مرور می کنیم. …

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