شروع کار با جنگو – ساخت اولین اپ جنگو

در آموزش قبلی و اولین آموزش از سری جنگو و پایتون، نصب پایتون و جنگو و فعال‌سازی virtualenv را به طور مفصل توضیح دادم. در صورتی که هنوز جنگو را نصب نکرده‌اید، پیشنهاد می‌کنم پیش از شروع کار با جنگو و ساخت اولین اپ جنگو، مطلب قبلی با عنوان نصب پایتون و جنگو را بخوانید. از آنجا که نحوه‌ی پیشرفت در دوره‌ی آموزشی پیش‌رو کاملا به صورت practical است، در هر جلسه تلاش می‌کنم ساخت یک بخش از یک پروژه را به نحوی پیش ببرم که هرکس بتواند به سرعت پروژه خود را با پیشرفت آموزش پیش ببرد. همچنین در بخش‌هایی که لازم باشد آموزش‌هایی تحت عنوان یادگیری عمیق در خصوص بخش‌های مختلف پایتون و جنگو را به صورت جداگانه منتشر خواهم کرد.

هدف کلی سری پست‌های آموزش جنگو آشنایی شما با فریم‌ورک، شناخت کتابخانه‌های مرتبط و در نهایت ایجاد سریع پروژه‌های واقعی است. در این جلسه که شروع کار با جنگو خواهد بود، تلاش می‌کنیم تا یک پروژه جنگو ایجاد کرده و اولین اپ را در جنگو بسازیم. به عبارت دیگر در این پست نسخه‌ی جنگو نصب شده را تست و نسخه‌ی آن را بررسی می‌کنیم. پروژه‌ی جدیدی ایجاد می‌کنیم. سرور را تست کرده و اولین نتایج را می‌بینیم. یک اپ جنگو جدید ایجاد می‌کنیم. برنامه‌ی معروف «سلام جهان» را ایجاد می‌کنیم و در نهایت مراحل کار را تست می‌کنیم.

بررسی نسخه‌ی نصب شده جنگو

به دایرکتوری پروژه‌ی خود بروید و با استفاده از دستور source وارد فضای مجازی ایجاد شده با virtualenv شوید. با تایپ دستور زیر نسخه‌ی جنگو نصب شده بر روی سیستم خود را بررسی کنید.

python -m django --version

همانطور که قبلا هم گفتم در زمان تولید این آموزش نسخه‌ی ۲.۰.۷ آخرین نسخه‌ی Django است که ما طبق آن پیش خواهیم رفت. اگر شما در ترمینال نسخه‌ی جنگو خود را می‌بینید، طبیعتا نصب و فعالسازی پیش‌نیاز ها به‌طور صحیح انجام شده است.

ساخت پروژه جدید در جنگو

مفهوم پرو‌ژه در django به بزرگترین واحد برنامه گفته می‌شود. یک پروژه دارای یک یا چندین اپ است که هر یک کارکرد منحصر به فردی دارند. شروع کار با ساخت یک پروژه شروع می‌شود. معمولا در نام‌گذاری پروژه نامی انتخاب می‌شود که به دسته‌ی نرم‌افزار اشاره دارد و یا نام تجاری شرکت را شامل می‌شود. نکته‌ی مهم در زمان نام‌گذاری پروژه این است که از نام‌هایی که با ماژول‌ها و اپ‌های داخلی جنگو تداخل داشته باشد استفاده نکنید. نام‌هایی مانند test و python می‌تواند با دستورات پیش‌فرض تداخل داشته باشد.

برای ساخت پروژه کافی است دستور زیر را در ترمینال و در مسیر پروژه اجرا کنید:

django-admin startproject accounting

دستور فوق یک دایرکتوری به نام accounting در مسیر جاری ایجاد کرده و فایل‌های اولیه‌ی پروژه را در آن ایجاد می‌کند. به صورت پیش‌فرض همزمان با ایجاد پروژه یک اپ هم‌نام با پروژه ایجاد می‌شود. این اپ شامل فایل‌هایی مانند تنظیمات، تنظیمات سرور و فایل‌هایی است که بعدا به فراخور توضیح خواهیم داد. در حال حاضر اپلیکیشن شما باید چنین شکلی داشته باشد.

پروژه‌ی ایجاد شده در جنگو
وضعیت فایل‌ها در یک پروژه جدید

اجرای سرور

برای اجرای پروژه‌ی ایجاد شده و اطمینان از اینکه همه چیز به درستی پیش رفته است، از دستور runserver استفاده می‌کنیم. دقت کنید. که از این پس اغلب دستوراتی که باید بر روی جنگو اعمال شود از طریق manage.py اجرا می‌شود. این ابزار را در اصطلاح چاقوی سوییسی می‌نامند. ابزاری همه کاره که در بخش‌های مختلف به کارکرد‌های مختلف آن خواهیم پرداخت. در حال حاضر برای اجرای سروی از دستور زیر استفاده می‌کنیم.

python manage.py runserver 8080

این دستور سرور را بر روی پورت ۸۰۸۰ اجرا می‌کند. در صورتی که عدد پورت در انتهای دستور را تایپ نکنید به صورت پیشفرض سرور بر روی پورت ۸۰۰۰ اجرا می‌شود. اگر این port در سیستم شما در اختیار سرویس دیگری است به راحتی می‌توانید آن را تغییر دهید. اگر همه چیز تا اینجا درست پیش رفته باشد، می‌توانید به آدرس http://127.0.0.1:8080 در مرورگر مراجعه کرده و پیام نصب موفقیت آمیز جنگو را ببینید. این صفحه چیزی شبیه به تصویر زیر است.

صفحه‌ی اول جنگو
اولین نتیجه‌ی اجرای سرور در مرورگر

ساختن اولین اپ جنگو

پس از ایجاد پروژه و تست آن نوبت به ساختن اپ می‌رسد. ایجاد اپ نیز بسیار ساده و از طریق همان چاقوی سوییسی انجام می‌شود. کافی است اینبار از دستور startapp استفاده کنید. توجه داشته باشید که شما می‌توانید این اپ را در هر آدرس دلخواهی ایجاد کنید. اغلب در برنامه‌های پیشرفته و شلوغ از پکیج‌های مختلف برای مدیریت اپ‌ها استفاده می‌کنند ولی این کار ضروری نیست و می‌توانید تمام اپ‌ها را در دل پروژه‌ی اصلی ایجاد نمایید. برای دیدن نتیجه‌ی کار دستور زیر را اجرا کنید:

python manage.py startapp helloworld

پس از اجرای دستور ساختار پروژه باید به شکل زیر تغییر کرده باشد. همانطور که می‌بینید یک دایرکتوری با عنوان helloworld برای اپ و در دل پروژه ایجاد شده و دارای فایل‌هایی است که در گام‌های بعدی مدیریت اپ به آنها خواهیم پرداخت.

خروجی فایل‌های اولین اپ جنگو
وضعیت فایل‌ها بعد از ایجاد اولین اپ

ساخت اپ سلام جهان

بالاخره به قسمت دوست داشتنی کار و خروجی یک برنامه‌ی ساده می‌رسیم. مراحل کار بسیار ساده است. مواردی که نیاز به توضیح بیشتر دارند را بعدا به طور کامل توضیح خواهم داد. برای مشاهده‌ی نتیجه فایل views.py را از دایرکتوری helloworld ویرایش کرده و کد‌های زیر را در آن قرار دهید.

from django.http import HttpResponse

def index(request):
return HttpResponse("Hello, world. You're at the polls index.")

فایل urls.py را ویرایش کرده و اطلاعات زیر را در آن درج کنید:

from django.urls import path
from . import views

urlpatterns = [
path('', views.index, name='index'),
]

فایل urls.py در دایرکتوری accounting را ویرایش کرده و آدرس‌هایی را که با helloworld شروع می‌شوند به فایل روتر مرتبط ارسال نمایید:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
path('helloworld/', include('helloworld.urls')),
path('admin/', admin.site.urls),
]

خب کار تقریبا تمام است. کافی است مجددا سرور را روی پورت دلخواه اجرا کنید. و در مرورگر به آدرس /helloworld/ بروید. پیغام Hello World نمایش داده خواهد شد. تبریک می‌گویم. شما اولین برنامه‌ی ساده‌ی جنگویی خود را ایجاد کرده‌اید.

در ادامه‌ی سری آموزش جنگو و پایتون در آموزش بعدی به استفاده از پنل ادمین، کار با مدل‌ها و پایگاه داده‌ها خواهیم پرداخت. جهت همراهی با این دوره آموزشی، با وبلاگ یک شهروند الکترونیکی همراه باشید.

دیدگاهتان را بنویسید

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