Update README.md
This commit is contained in:
39
README.md
39
README.md
@@ -1,23 +1,39 @@
|
|||||||
Tadrisino API
|
Tadrisino API
|
||||||
|
|
||||||
Backend پروژه Tadrisino با Django و Django REST Framework پیادهسازی شده و شامل بخشهای اصلی احراز هویت، محتوای آموزشی، پیشرفت کاربر، اشتراک، پرداخت، تخفیف، پشتیبانی، اعلانها، خانواده و سیستمهای مرتبط است.
|
این پروژه بخش API و سرویسهای سمت سرور سامانه Tadrisino را شامل میشود و ساختار آن بهصورت ماژولار طراحی شده است.
|
||||||
|
|
||||||
اجرا
|
ساختار پروژه به گونهای است که هر بخش اصلی سیستم در یک اپلیکیشن مستقل قرار گرفته و مدلها، منطق مربوط به API، Serializerها، Viewها، URLها و Migrationهای موردنیاز هر بخش در همان اپ مدیریت میشوند.
|
||||||
|
|
||||||
|
اجرای پروژه
|
||||||
|
|
||||||
|
ابتدا محیط مجازی را ایجاد و فعال کنید:
|
||||||
|
|
||||||
python3 -m venv venv
|
python3 -m venv venv
|
||||||
source venv/bin/activate
|
source venv/bin/activate
|
||||||
|
|
||||||
|
سپس وابستگیهای پروژه را نصب کنید:
|
||||||
|
|
||||||
pip install -r requirements.txt
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
اجرای Migrationها:
|
||||||
|
|
||||||
python manage.py migrate
|
python manage.py migrate
|
||||||
|
|
||||||
|
در صورت نیاز میتوان یک کاربر مدیریتی ایجاد کرد:
|
||||||
|
|
||||||
python manage.py createsuperuser
|
python manage.py createsuperuser
|
||||||
|
|
||||||
|
در نهایت پروژه را اجرا کنید:
|
||||||
|
|
||||||
python manage.py runserver
|
python manage.py runserver
|
||||||
|
|
||||||
مستندات API
|
مستندات API
|
||||||
|
|
||||||
Swagger:
|
پس از اجرای پروژه، مستندات API از طریق Swagger در دسترس است:
|
||||||
|
|
||||||
http://127.0.0.1:8000/api/docs/
|
http://127.0.0.1:8000/api/docs/
|
||||||
|
|
||||||
Redoc:
|
مستندات Redoc:
|
||||||
|
|
||||||
http://127.0.0.1:8000/api/redoc/
|
http://127.0.0.1:8000/api/redoc/
|
||||||
|
|
||||||
@@ -40,6 +56,17 @@ support/
|
|||||||
notifications/
|
notifications/
|
||||||
family/
|
family/
|
||||||
|
|
||||||
هر بخش دارای مدلها، serializerها، viewها، URLها، migration و تنظیمات مربوط به خود است.
|
بخشهای مختلف پروژه شامل مدیریت حساب کاربری، محتوای آموزشی، پیشرفت و عملکرد کاربر، سیستم آموزشی، اشتراک، پرداخت، تخفیف، همکاری در فروش، پشتیبانی، اعلانها و مدیریت اعضای خانواده هستند.
|
||||||
|
|
||||||
برای تست API میتوان از Swagger و همچنین پنل مدیریت Django استفاده کرد.
|
نکات فنی
|
||||||
|
|
||||||
|
* ساختار پروژه بهصورت ماژولار و قابل توسعه طراحی شده است.
|
||||||
|
* APIها از طریق مسیرهای مشخص و مستند قابل دسترسی هستند.
|
||||||
|
* احراز هویت و مدیریت Session برای استفاده از APIها در نظر گرفته شده است.
|
||||||
|
* پنل مدیریت برای مدیریت دادههای اصلی سیستم فراهم شده است.
|
||||||
|
* Migrationهای مربوط به مدلهای پروژه در هر اپ نگهداری میشوند.
|
||||||
|
* ساختار فعلی پروژه امکان توسعه و اضافه شدن قابلیتهای جدید را بدون ایجاد تغییرات گسترده در بخشهای موجود فراهم میکند.
|
||||||
|
|
||||||
|
تست
|
||||||
|
|
||||||
|
برای بررسی و تست APIها میتوان مستقیماً از Swagger استفاده کرد. همچنین برای ایجاد و مدیریت دادههای اولیه، پنل مدیریت Django در دسترس است.
|
||||||
Reference in New Issue
Block a user