Help to build APIs Faster
Project description
Methodism
Methodism sizga djangoda API larni tezroq yaratish va tez ishlatish imkoni beradi.
Egamberdiyav Xudoyberdi Tomonidan Yaratilgan
O'rnatish uchun qo'llanma
- Virtual muhit yarating va faollashtiring:
python -m venv venv
# Windows: venv\Scripts\activate
# Linux/Mac: source venv/bin/activate
- Pip va setuptools ni yangilang (muhim!):
python -m pip install --upgrade pip setuptools wheel
- Methodism ni o'rnating:
pip install methodism
Agar Python 3.12+ da muammo bo'lsa, --no-build-isolation flagini qo'shing:
pip install methodism --no-build-isolation
About
Ushbu Kutubxona Egamberdiyev Xudoyberdi Tomonidan yaratilgan bo'lib tog'ridan tog'ri django kutubxonasi ustiga qurulgan. Bu sizga API lar yozganda uni tez ishlatish va tezroq API yozish imkoni beradi. Avtomatik tarzda siz yozgan funksiyani method ga aylantirgan holatda api hosil qiladi
filelar
methodism/costumizing.pyushbu file tayyor bir qator claslarni custum holarga o'tqazilgan varianti hisoblandi.methodism/decors.pyUshbu file kerakli bo'lgan decoratorlarni yozish uchun ishlatiluvchi file.methodism/error_messages.pybo'lishi mumkin bo'lgan xatoliklar yig'ilgan lug'at ko'rinishidagi file.methodism/helper.pyYordamchi funksiyalar joylangan file.methodism/main.pyAsosiy class yozilgan filemethodism/models.pyKerakli bo'lishi mumkin bo'lgan modellar to'plamimethodism/paginator.pyvamethodism/sqlpaginator.pyUshbu fayllar bizga paginatsiya hosil qilishda yordam beradi
Ishlatish ketma ketligi
Birinchi navbatda kerakli kutubxonalarni o'rnatib olishingiz kerak
From GitHub
pip install -r requirements.txt
From PyPi
pip install Django==4.2 django-rest-framework==0.1.0 djangorestframework==3.14.0
Yuklab olib bo'lgach O'zingizga views.py faylida kerakli bo'lgan classni yozing va uni urls.py ga ulang,
class ga esa methodism/main.py dagi METHODISM classidan vorislik bering.
Example in views.py
from methodism.main import METHODISM
# agar bundan foydalansangiz settings.INSTALLED_APPS ga 'rest_framework.authtoken' ni qo'shib qo'ying
from rest_framework.authtoken.models import Token
class YourClass(METHODISM):
file = '__main__'
get_methods = "__main__" # faqat get methodlari uchun
token_key = "Bearer"
auth_headers = "Authorization"
token_class = Token
not_auth_methods = [] # ro'yxatdan o'tish shart bo'lmagan kutubxonalarni qo'shib qo'ying
""" Misol uchun yozgan funksiyangiz:
def salom_dunyo(requests, params):
return "salom"
methodism:
salom.dunyo
siz yozgan har qanday ostki chiziqli yoki oddiy chiziqli funksiyalar nuqta orqali avtomatik ajratiladi!
not_auth_methods = ['salom.dunyo']
"""
Navbatdagi class SqlAPIMethodism
from methodism.main import SqlAPIMethodism
# agar bundan foydalansangiz settings.INSTALLED_APPS ga 'rest_framework.authtoken' ni qo'shib qo'ying
from rest_framework.authtoken.models import Token
# import your funksitions located file
class YourClass(SqlAPIMethodism):
file = "__main__" # funksiyalar joylashgan fileni hech qanday qo'shimchalarsiz tanishitiring
get_methods = "__main__" # faqat get methodlari uchun
token_key = "Bearer"
auth_headers = "Authorization"
token_class = Token
not_auth_methods = [] # ro'yxatdan o'tish shart bo'lmagan kutubxonalarni qo'shib qo'ying
""" Misol uchun yozgan funksiyangiz:
def sizni_funksiyangiz(request, params):
return "select columns from your_table", True # natija bitta bo'sa True ko'p bo'lsa False Qo'yiladi
siz yozgan har qanday ostki chiziqli yoki oddiy chiziqli funksiyalar nuqta orqali avtomatik ajratiladi!
not_auth_methods = ['sizni.funksiyangiz']
"""
funksiya taxmianan shunaqa yozilishi shart!
def funk(request, params):
return "select colums from your_table", False
# sql zaprosga istalgancha uzunlik mumkin, funk 2ta qiymat strda->sql va ikkinchisi Bool typiga ega bo'lishi kerak
# True -> agar natija bitta bo'lsa
# False -> agar natija bittadan ko'p bo'lsa
# AGARDA XATOLIK QAYTARMOQCHI BO'LINSA
# post funksiya
def funk(request, params):
return {"error": "xatolik"} # xatolikni chiqarish uchun list yoki dict formatlaridan foydalananing!!
# DIQQAT: GET zaprosi uchun funksiya yozilganda Params kirib kelmaydi
Qo'shimcha ishlatishga oid qoidalarni Methodism Asosiy funksiyasigaa kiritilgan documentatsiyadan ham o'rganib olish mumkin
Kod Manbalari
Methodism Barcha uchun ochiq kutubxona. Kodlari va yoki qo'shimcha ma'lumotlarni bemalol githubdan yoki dasturchining o'zidan so'rab o'rganib olishingiz mumkin
Happy Time. Enjoy IT ;)
if you can't understand contact with programmer
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file methodism-0.3.4.tar.gz.
File metadata
- Download URL: methodism-0.3.4.tar.gz
- Upload date:
- Size: 14.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88edd4c89f7d1189c07ec1fde0cda4ee6458d601e70a5b8c7ff9742a3c2f1164
|
|
| MD5 |
086d2de96b511fb775319bf72ca0bf50
|
|
| BLAKE2b-256 |
9a989bf27c5579a87e65c715dffc391ce6225adc30a0331088d5d1808e636a1e
|
File details
Details for the file methodism-0.3.4-py3-none-any.whl.
File metadata
- Download URL: methodism-0.3.4-py3-none-any.whl
- Upload date:
- Size: 14.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
41968616e87e8318c74372e3e8426b20f3413dca0b2c353b2a05f9b1cb34885b
|
|
| MD5 |
200f0f2b9af8719dfbe1c349ae35ac62
|
|
| BLAKE2b-256 |
2467db461d1aaf42ac140c6ee3b6d945dfc0c9c881245db5d0adea7f70a51563
|