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

ساخت پروژه های جانگو با شل اسکریپت

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

خوب بریم واسه توضیحات

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

django-admin startproject name-project

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

python3 manage.py startapp name-application

بعدش که app مورد نظر رو ساختید باید برید توی فایل setting.pyقسمت INSTALLED_APPS اونجا باید نام app رو که ساختید رو بدید به صورت زیر باید باشه

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_db_logger',
'myapp',
]

خوب شما فرض کنید میخواید بجای ساخت یه app بخواید چندین app رو بسازید بعدش باید نام app های ساخنه شده خودتون رو یکی یکی وارد کنید داخل فایل مربوط به تنظیمات یا همون setting.pyخوب این کار یکم زمان بره من با این شلی که ساختم این قابلیت رو داره که شما app که میسازید رو توی فایل تظیمات می نویسه اون نام app رو دیگه نیاز نیست دستی شما برید توی فایل تنظیمات وارد کنید.

خوب بریم سراغ الگوریتم کاری این شل که به صورت زیر هست.

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

Bash -f django.sh

مرحله اول:از شما نام پروژه رو میخواد که بهش میدید

مرحله دوم:از شما سوال میکنه که آیا میخواید ساختار قالب و فایل های سایت رو داشته باشید اگر یک رو بزنید براتون دوتا پوشه به اسم های static و templates ساخته میشه که توی هرکدوم یه سری فایل و پوشه میسازه بعدش باید عدد صفر یا هرچیز وارد کنید که از حالت معمول بیاد خارج شه

مرحله سوم: ازتون نام app رو میخواد بعدش دوباره ازتون سوال می کنه که ایا میخواهید دوباره app بسازید با زدن yes می تونید یه app دیگه بسازید و اگر می خواهید اتمام دهید به ساخت app جدید باید گزینه no رو بزنید.

اما یه نکته باحالی که من نوشتم توی این شل اینه که شما زمانی که اپلیکیشن شما تموم شده توی اپلیکشن سه تا فایل با پسوند sh رو می بینید این فایل ها عبارتنداز:

  • Run.sh
  • Remote.sh
  • push.sh

توی فایل run.sh میاد براتون اپلیکیشن رو اجرا می کنه

در حالت عادی شما برای اجرای اپلیکیشن میاد دستور زیر رو میزنید

python3 manage.py runserver

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

Sh run.sh

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

find -name &quot__pycache__&quot -type d -exec rm -rf {} \;
python3 manage.py runserver

دستور اول میاد تمام پوشه های که با نام __pycache__ رو پاک می کنه این پوشه پوشه حاوی کش پروژه تون هست که پیدا می کنه و انارو پاک می کنه و دستور دوم میاد اجرا میکنه

خوب الان میخوام دوتا فایل شل اسکریپت دیگه رو براتون توضیح بدم در واقع این دو فایل کارشون با گیت هست.

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

Sh remote.sh

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

مثلن:دقیقا اینو وارد نکنید این یه ادرس هست باید ادرس خودتون رو وارد کنید

https://githu1b.com/bardia/api-rest-go.git

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

echo -n &quotEnter url git project > &quot
read url
echo -n &quotPlease select a name for commit > &quot
read namecommit
git init
find -name &quot__pycache__&quot -type d -exec rm -rf {} \;
git add .
git commit -m &quot$namecommit&quot
git remote add origin $url
git push origin master

خوب فایل اخر فایل push.sh هست همون کار کامیت رو انجام میده براتون اما تمیز تر که برای اجرا باید کد زیر رو بزنید

Sh push.sh

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

find -name &quot__pycache__&quot -type d -exec rm -rf {} \;
echo -n &quotPlease select a name for commit > &quot
read namecommit
git add .
dt=$(date '+%A-%b-%d-%Y-%H-%M-%S');
git commit -m &quot$namecommit-$dt&quot
git push --set-upstream origin master

دانلود شل اسکریپت

جانگوپایتونpythondjango
Go Developer(gopher-academy.ir)
شاید از این پست‌ها خوشتان بیاید