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

جنگو

سلام

در این قسمت می خواهیم برای ارسال پاسخ به یک پست مشخص، ویوی جدید بسازیم.

یک آدرس جدید اضافه می کنیم.

myproject/urls.py

یک فرم  جدید برای پاسخ به پست می سازیم.

boards/forms.py (مشاهده کد کامل)

ویوی جدید توسط login_required@ محافظت می شود.

boards/views.py (مشاهده کد کامل)

حالا باید ریدایرکت تابع ویوی new_topic را بروزرسانی  کنیم. (همان قسمتی که با TO DO# به شکل کامنت درآمده بود.)

نکتۀ مهم: در ویوی reply_topic از topic_pk  استفاده می کنیم چون قرار است به آرگومانی از تابع ارجاع دهیم و این در حالی است که در ویوی new_topic از topic.pk استفاده می کنیم چراکه topic یک شی یا object از مدل Topicبوده و استفاده از pk. امکان دسترسی به متعلقات مدل تاپیک را فراهم می کند. جزئیات ریز و تفاوت های بزرگ!!

اولین نسخه از قالب با محتوای زیر خواهد بود:

templates/reply_topic.html

بعد از ارسال پاسخ، کاربر به پست های تاپیک انتقال می یابد.

حالا می توانیم ایجاد کننده و مالک یک پست را تغییر دهیم و در خروجی نام او را مشخص کنیم.

templates/topic_posts.html (مشاهده کد کامل)

حالا برای نوشتن فایل تست یک فایل جدید با نام test_view_reply_topic.py را درون فولدر boards/tests ایجاد می کنیم.

boards/tests/test_view_reply_topic.py (مشاهده کد کامل)

مورد اصلی مربوط به تست در این قطعه کد، کلاس ReplyTopicTestCase است. در مرحله بعدی می خواهیم چهار کلاس دیگر آن را توسعه دهیم.

در ابتدا دکوراتور login_required@ را بررسی و سپس کدهای وضعیت و وروردی های html را چک می کنیم. در نهایت نیز یک بار فرم را به صورت معتبر و بار دیگر به صورت نامعتبر ارسال می کنیم.

ترجمۀ اختصاصی توسط تمدن

 

مطلب بعدی: QuerySets

مطلب قبلی: ویوی پست های یک تاپیک

بدون دیدگاه

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

جنگو
تنظیمات دیتابیس PostgreSQL

سلام ابتدا به کاربر Postgres سوییچ می کنیم. sudo su – postgres یک حساب کاربری برای دیتابیس می سازیم. createuser u_boards یک دیتابیس جدید ساخته و نام کاربری بالا را برای آن تنظیم می کنیم. createdb django_boards –owner u_boards یک پسورد قوی برای کاربر انتخاب می کنیم. psql -c “ALTER …

جنگو
ساخت کاربر برای برنامه

ساخت کاربر برای برنامه با دستور زیر کاربر جدید را می سازیم. adduser boards من معمولاً نام برنامه را برای نام کاربری انتخاب می کنم. پسورد و سایر اطلاعات اضافی که از شما می خواهد را وارد کنید. حالا نام کاربری را به لیست sudoer ها (حساب های کاربری با …

جنگو
توسعه و پیکربندی VPS در دیجیتال اوشن

سلام شما ممکن است قصد استفاده از هر نوع VPSای را داشته باشی و این هیچ عیبی ندارد. نکتۀ مهم آن است که تنظیمات را مشابه من انجام دهید. سیستم عامل روی سرور، اوبونتوی ۱۶.۰۴ است. در مرحلۀ اول یک سرور جدید (در دیجیتال اوشن به آن Droplet می گویند.) …

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