vance
vance
خواندن ۴ دقیقه·۲ سال پیش

شروع اولین پروژه با جنگو : قسمت اول

خب سلام سلام

من میخوام توی این وبلاگ بهتون یاد بدم که چطوری اولین پروژتون رو با فریم ورک جنگو بسازید . خب اینجا دیگه توضیح نمیدم جنگو چیه , به چه دردی میخوره یا چرا خوبه یا تاریخچه اون چیه چون دوستان زیادی قبل از من اینارو گفتن من سریع میخوام برم سر پروژه .

پیش نیاز شروع کار با جنگو

مهم ترین پیش نیازی که نیاز دارید اینکه به زبان برنامه نویسی پایتون نسبتا تسلط داشته باشید ولی من اینجا یه لیست از تکنولوژی های که به عنوان توسعه دهنده جنگو به ان ها نیاز دارید رو این زیر مینویسم

  • تسلط به زبان برنامه نویسی پایتون
  • آشنایی با HTML و CSS
  • آشنایی با شبکه (در حد نتورک پلاس )
  • آشنایی با دیتا بیس های sql ترجیحا به sqlit
  • آشنایی با ورژن کنترل git
  • آشنایی با سیستم عامل های گنو لینوکس

برسی پروژه

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

این پروژه ساده ای هست برای شروع شاید بعدا پروژه های سخت تر هم شروع کنیم پس من رو دنبال کنید

ایجاد محیط مجازی پایتون

اولین قدم اینکه یک محیط مجازی پایتون ایجاد کنیم .

خب من یدونه پوشه ساختم به اسم mysite و قراره محیط مجازی رو توی این دایرکتوری بسازیم

سپس virtualenv رو از طریق pip با دستور زیر نصب می کنیم .

pip3 install virtualenv
من از سیستم عامل گنو لینوکس استفاده میکنم ممکنه تو ویندوز یکم متفاوت باشه ولی میتونید خودتون دنبالش بگردید و کلی چیز یاد بگیرید :)

خب قدم بعدی اینکه محیط مجازی رو با دستور زیر ایجاد میکنیم و اسمش رو هم venv میزاریم.

virtualenv venv

حالا باید محیط مجازی رو با دستور زیر فعال کنیم (اگر از ویندوز استفاده میکنید یکم دستور متفاوت هست :)

source venv/bin/activate

نصب جنگو

حالا که محیط مجازی رو اماده کردیم باید خود جنگو رو نصب کنیم .اما باید حواسمون باشه کدوم نسخه از جنگو رو قراره نصب کنیم .

جنگو هم مثل خیلی از برنامه ها دوتا نسخه داره LTS و غیر LTS که نسخه LTS برای مدت طولانی و با آپدیت های کوچیک پشتیبانی میشن

همین طور که می بنید در حال حاضر نسخه LTS موجود ۳.۲ هست و به زودی جای خودش رو به ۴.۲ میده پس ما فعلا همون ۳.۲ رو نصب می کنیم

خب برای این کار از دستور زیر استفاده می کنیم تا ورژنی که از جنگو رو می خوایم نصب کنیم محدود کنیم

pip install &quotdjango>3.2,<3.3&quot

ایجاد پروژه جنگو

کم کم داریم می رسیم به جاهای جذاب .

ایجاد پروژه جنگو کار ساده ای هست. برای این کار از دستور زیر استفاده می غکنیم تا یک پروژه جنگو با اسم mysite ایجاد کنیم ولی یک نکته وجود داره

django-admin startproject mysite

نکته اش اینکه الان اگر ls بگیریم برامون ی پوشه ساخته به اسم پروژمون یعنی mysite و برای دسترسی داشتن به بخش های پروژه ممکنه کمی دچار مشکل بشیم و چیزی که من ترجیح می دم اینکه پروژه ام رو از پوشه اصلی شروع کنم . پس به اخر دستور یک دونه نقطه ( .‌ ) اضافه می کنیم تا پروژه رو از همین جا شروع کنه

django-admin startproject mysite .

خب توضیح این موضوع یکم سخته ولی بزارید ساختار درختی رو ببنیم تا بهتر متوجه بشید که چی شد . اصلا نگران گیج شدنتون نباشید:)

django-admin startproject mysite
django-admin startproject mysite


django-admin startproject mysite .
django-admin startproject mysite .

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

اجرا کردن پروژه

خب دیگه الان می تونید پروژه رو اجرا کنیم . فقط باید دستور زیر رو بزنیم

python manage.py runserver

حالا اگر توی مرورگر کامپیوتر به آدرس http://127.0.0.1:8000/ بریم می تونیم ببینیم جنگو اجرا شده


جمع بندی این قسمت

بیاید کار هایی که تو این قسمت انجام دادیم رو باهم جمع بندی کنیم . اول از همه محیط مجازی رو ایجاد کردیم بعدش جنگو رو نصب کردیم بعدش هم پروژه رو ایجاد کردیم

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

امیدوارم این نوشته ها به دردتون بخوره من هدفم اینکه جامعه با سواد تری داشته باشیم و به بقیه چیزای که بلد هستم رو یاد بدم و اینکه اگر برایتون کاربرد داشت میتونید برام کامنت بزارید یا دنبالم کنیم چه اینجا چه توی بقیه جا ها مثل اینستاگرام تویتر و یوتیوب و گیت هاب . و اگر دیگه خیلی حال کردید یه روز که من رو دیدید برام یه قهوه بخرید :)


خرید قهوه از کافه ته :) coffeete.ir/i_am_vance


گیت هاب

اینستاگرام

تویتر

لینکدین



برنامه نویسیجنگوdjangoطراحی سایتآموزش
سلام سلام من ونس هستم :)
شاید از این پست‌ها خوشتان بیاید