پرش به محتویات

۱. اجرای فروشگاه

راه انداختن

از ریشه‌ی مخزن، با کتابخانه نصب‌شده در یک محیط تازه:

python -m venv .venv && .venv/bin/pip install -e '.[drf]'
cd example
../.venv/bin/python manage.py migrate
../.venv/bin/python manage.py example_data
../.venv/bin/python manage.py createsuperuser
../.venv/bin/python manage.py runserver

example_data دو شعبه می‌سازد، North و South، چهار سفارش و پنج نفر. رمز عبور هر نفر همان نام کاربری اوست - هیچ‌وقت روی یک پایگاه داده‌ی واقعی.

با این وارد شوید کیست به چه می‌رسد
north_manager مدیر شعبه سفارش‌های North: خواندن، ویرایش، تأیید - هیچ‌وقت قیمت را نه
south_manager مدیر شعبه سفارش‌های South، به همان شکل
accountant حسابدار همه‌ی سفارش‌ها، با قیمتشان؛ بدون تغییر دادن چیزی
alice، bob مشتری سفارش‌های خودشان

تنظیمات چه می‌گویند

بخش کتابخانه در config/settings.py:

# clearance: the backend that reads bundles, scopes and what was taken away.
AUTHENTICATION_BACKENDS = ['clearance.backends.ClearanceBackend']

# clearance: every API view asks the model's policy, unless it names another.
REST_FRAMEWORK = {
    'DEFAULT_PERMISSION_CLASSES': ['clearance.drf.permissions.ModelPolicyPermission'],
    'DEFAULT_AUTHENTICATION_CLASSES': ['rest_framework.authentication.SessionAuthentication'],
}

# clearance: the bundles, the status action and the roles are written in
# config/access.py, and applied by every migrate.
CLEARANCE = {
    'ACCESS': 'config.access.ACCESS',
    'SYNC_ON_MIGRATE': True,
}

و در INSTALLED_APPS، پنل ادمین کتابخانه به جای پنل Django، و سه اپ آن - نصب را ببینید.

صفحه‌های دسترسی

در /admin/ با ابرکاربر وارد شوید. زیر دسترسی، صفحه‌ی نمای کلی بسته‌ها، نقش‌ها، افرادی که دسترسی دارند و هر چیزی را که clearance_check پیدا کرده فهرست می‌کند:

نمای کلی صفحه‌های دسترسی

بقیه‌ی آموزش فروشگاه را لایه به لایه باز می‌کند.