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

جنگو

سلام

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

در تصویر بالا، کاربری وارد سیستم نشده اما توانسته به فرم ارسال پست دسترسی پیدا کند. جنگو برای جلوگیری از این موضوع به صورت پیشفرض یک دکوراتور (decorator) برای ویو دارد.

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

به همین سادگی! حالا اگر کاربری بدون ورود به سیستم آدرس مربوط به ارسال پست جدید را وارد کند به صفحۀ لاگین انتقال می یابد.

به آدرس زیر توجه کنید.

?next=/boards/1/new/

می توانیم روی قالب لاگین کار کنیم تا مقادیر پارامتر next در صفحه نمایش داده شده و تجربه کاربری یا همان UX را بهبود دهیم.

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

بنابراین در صورت ورود موفقیت آمیز به صفحه ای وارد خواهیم شد که در آن بوده ایم.

همانطور که مشخص است پارامتر next به صورت پیشفرض در جنگو قرار دارد.

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

 

مطلب بعدی: تست Login Required

مطلب قبلی: مقدمه و مفهوم ORM

بدون دیدگاه

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

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

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

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

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

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

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

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

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