دوره یادگیری فریمورک وب جنگو Django – قسمت ۳ (آموزش مراحل Deploy جنگو)

این دوره آموزشی، قسمت سوم و آخر از مجموعه آموزش های پروژه محور فریمورک وب جنگو است. در این دوره با ادامه بحث قسمت ۱ و ۲، در حال تکمیل یادگیری جنگو در قالب پیاده سازی و Deploy کردن پروژه ساخت یک اتاق گفتگو (Forum) به همراه کلیه بخش ها و امکانات مورد نیاز آن هستیم.

در قسمت ۱ این دوره آموزشی، از نصب و آماده سازی محیط توسعه جنگو با کدنویسی در محیط VSCode شروع کردیم و به معماری MVT (Model، View، Template) و مبحث  URL Routing پرداختیم. همچنین با ایجاد فرم ها و پردازش و اعتبارسنجی آنها و نوشتن همزمان Test های مورد نیاز، با نحوه توسعه اصولی پروژه ها آشنا شدیم.

در قسمت ۲، به ادامه قسمت ۱ و ایجاد سیستم احراز هویت (Authentication) که شامل صفحه SignUp، Login، Logout، Forgot/Reset Password و Change Password است پرداختیم. همچنین چگونگی محدود کردن کاربران از دسترسی به برخی view ها (Login Required) به تفصیل بیان شد.

در طول پروژه، برای زیبایی ظاهری صفحات نیز از کتابخانه bootstrap استفاده نمودیم.

در این قسمت (قسمت ۳) که قسمت پایانی این مجموعه آموزش است برای تکمیل نهایی پروژه از Class-Based View ها استفاده خواهیم کرد تا بتوانیم سادگی و قابلیت استفاده مجدد را فراهم کنیم. سپس به GCBV (Generic Class-Based View) ها خواهیم پرداخت و با کمک آنها view های قبلی را Refactor میکنیم.

در ادامه با decorator ها در GCBV ها کار میکنیم و همچنین برای صفحاتی که نیاز به صفحه بندی دارند Pagination قرار میدهیم. افزودن یک Markdown Editor و استفاده از پکیج Humanize و نیز کار با Session ها تکمیل کننده نهایی قابلیت های سایت خواهد بود.

بخش قابل توجهی از این قسمت به موضوع مهم Deploy کردن اپلیکیشن روی سرور پرداخته شده است. برای این کار با مرور اهمیت و کاربرد Git و Github بطور عملی با این سیستم های کنترل ورژن (Version Control System) کار خواهیم کرد تا با کمک مخزن (Repository) گیت هاب، کدهای پروژه را مدیریت کرده و پروژه را از کامپیوتر شخصی به سرور منتقل کنیم.

پس از آن به انتقال Setting های پروژه، مبحث Dependency ها و انتقال کتابخانه های مورد نیاز خواهیم پرداخت.

سپس با Nginx، Gunicorn و Supervisor و همچنین دیتابیس PostgrSQL آشنا خواهیم شد و بطور عملی آنها را روی سرور Linux Ubuntu به همراه Python3 و VirtualEnv نصب خواهیم کرد.

در انتها با پیکربندی gunicorn، Supervisor و Nginx روی سرور لینوکس اوبونتو و همچنین تنظیمات سرویس ارسال Email، کار Deployment پروژه را به اتمام میرسانیم.

این دوره میتواند برای برنامه نویسان وب به ویژه علاقه مندان به زبان پایتون برای استفاده از این فریمورک در توسعه وبسایت های داینامیک و Deploy کردن آن روی سرور دید مناسبی ایجاد نماید.

تهیه و دانلود قسمت سوم دوره آموزش جنگو