فهرست سرفصل‌های Django
خانه (Home) مقدمه (Intro) شروع به کار (Get Started) ساخت محیط مجازی (Create Virtual Environment) نصب (Install Django) ساخت پروژه (Create Project) ساخت اپ (Create App) ویوها (Views) آدرس ها (URLs) قالب ها (Templates) مدل ها (Models) افزودن داده (Insert Data) به روزرسانی داده (Update Data) حذف داده (Delete Data) به روزرسانی مدل (Update Model) آماده سازی قالب و ویو (Prep Template and View) افزودن لینک به جزئیات (Add Link to Details) افزودن قالب مادر (Add Master Template) افزودن صفحه ایندکس اصلی (Add Main Index Page) قالب 404 (404 Template) افزودن ویوی تست (Add Test View) پنل مدیریت (Admin) ساخت کاربر (Create User) افزودن مدل ها (Include Models) تنظیم List Display (Set List Display) به روزرسانی اعضا (Update Members) افزودن اعضا (Add Members) حذف اعضا (Delete Members) متغیرها (Variables) تگ ها (Tags) شرط if/else (If Else) حلقه for (For Loop) کامنت (Comment) include (Include) معرفی QuerySet (QuerySet Introduction) متد get (QuerySet Get) فیلتر (QuerySet Filter) مرتب سازی (QuerySet Order By) افزودن فایل های استاتیک (Add Static Files) نصب WhiteNoise (Install WhiteNoise) جمع آوری فایل های استاتیک (Collect Static Files) افزودن فایل های استاتیک سراسری (Add Global Static Files) افزودن استایل به پروژه (Add Styles to the Project) مقدمه (PostgreSQL Intro) ساخت حساب AWS (Create AWS Account) ساخت دیتابیس در RDS (Create Database in RDS) اتصال به دیتابیس (Connect to Database) افزودن اعضا (Add Members) Elastic Beanstalk (EB) ساخت requirements.txt (Create requirements.txt) ساخت django.config (Create django.config) ساخت فایل zip (Create .zip File) استقرار با EB (Deploy with EB) به روزرسانی پروژه (Update Project) افزودن فیلد slug (Add Slug Field) افزودن Bootstrap 5 (Add Bootstrap 5) مرجع تگ های قالب (Template Tag Reference) مرجع فیلترها (Filter Reference) مرجع Field Lookups (Field lookups Reference) کامپایلر (Compiler) تمرین ها (Exercises) آزمون (Quiz) سرفصل (Syllabus) برنامه مطالعه (Study Plan) سرور (Server) گواهینامه (Certificate)
نتیجه‌ای برای جستجو یافت نشد.

قالب 404 (404 Template)

گاهی آدرس اشتباه می زنیم و خطای «یافت نشد (404 Not Found)» می آید. جنگو یک ویوی آماده دارد. اما می توانیم پیام خطا را با «قالب 404» شخصی سازی کنیم.

صفحه پیدا نشد (404) در حالت عادی

اگر صفحه ای وجود نداشته باشد، جنگو یکی از دو حالت را نشان می دهد. یا قالب 404 داخلی را می بینید، یا صفحه دیباگ اگر DEBUG روشن باشد.

نکته: برای دیدن قالب 404 داخلی، باید DEBUG خاموش باشد.

خاموش کردن دیباگ و مجاز کردن میزبان

در settings.py مقدار DEBUG را False کن. سپس ALLOWED_HOSTS را تنظیم کن تا درخواست ها مجاز شوند.

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False

ALLOWED_HOSTS = ['*']

مشاهده در ادیتور

هشدار: در محیط واقعی، دامنه مشخص بگذار. مثال: ALLOWED_HOSTS = ['example.com'].

ساخت قالب سفارشی 404

برای پیام اختصاصی، یک فایل 404.html در پوشه templates بساز. جنگو هنگام خطای 404 این فایل را نشان می دهد.

<!DOCTYPE html>
<html>
<title>Wrong address</title>
<body>
  <h1>Ooops!</h1>
  <h2>I cannot find the file you requested!</h2>
</body>
</html>

مشاهده در ادیتور

  1. فایل 404.html را داخل templates بساز.
  2. سرور را اجرا کن و آدرس اشتباه بزن.
  3. پیام سفارشی خودت را ببین.

بازگردانی حالت آموزش

برای ادامه تمرین ها، می توانی دوباره DEBUG را روشن کنی و میزبان ها را خالی بگذاری.

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

ALLOWED_HOSTS = []

مشاهده در ادیتور

جمع بندی سریع

  • DEBUG=False تا 404 واقعی دیده شود.
  • ALLOWED_HOSTS را درست تنظیم کن.
  • فایل 404.html پیام را شخصی می کند.
  • برای تمرین، موقتاً DEBUG=True کن.

بیشتر بخوان: صفحه ایندکس اصلی | قالب مادر | قالب 404