Skip to main content

Standalone shop app, that you can add to your project

Project description

Features

Features:

  • Products
    • products (multiple images + main image, title, description, etc.)
    • products categories (parent/child categories)
    • product dynamic stats
    • product comments
    • search for products/categories
    • filter for products in the category
  • Customers
    • wish lists
    • cart
    • compare lists
    • bonuses wallet
    • customer support request
  • Settings
    • taxes
    • currencies
  • Orders
    • orders
    • order reports (view and generation of pdf)
    • shipping
    • statuses of order / payment / shipment

Installation

  • Install library
pip install drf-shop-api
  • Add to installed apps

    INSTALLED_APPS = [
      ...
      'drf_shop_api'
    ]
    
  • Add api path to you root urls.py

   urlpatterns = [
    ...
    path("shop/", include("drf_shop_api.urls")),
]
  • Use create_shop_profile decorator on create_user method of your UserManager
from django.contrib.auth.base_user import BaseUserManager

from drf_shop_api.decorators import create_shop_profile


class UserManager(BaseUserManager):
    @create_shop_profile
    def create_user(self, email, password=None):
        if not email:
            raise ValueError("Enter the email")
        user = self.model(email=self.normalize_email(email))
        user.set_password(password)
        user.save(using=self._db)
        return user
  • Setup AUTH_USER_MODEL in settings.py

  • Run python manage.py makemigrations and python manage.py migrate (Due to optional Payment model from root project)

  • Optional settings:

    • DRF_SHOP_PAGE_SIZE on will be default 10
    • DRF_SHOP_PAYMENT_MODEL = "projects.payments.models.Payment"
    • DRF_SHOP_PAYMENT_STATUS_CHOICES = "project.payments.choices.PaymentStatus"
    • DRF_SHOP_BONUS_RATE = percentage value for each order that will go to bonus wallet

Dependencies

django
drf
drf-yasg 1.21.5
rest_framework_simplejwt
mixer
django-filter

TODO

  • Add DB indexes
  • Task for currency rate update
  • Review permissions

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

drf_shop_api-0.0.3.tar.gz (20.4 kB view details)

Uploaded Source

Built Distribution

drf_shop_api-0.0.3-py3-none-any.whl (27.9 kB view details)

Uploaded Python 3

File details

Details for the file drf_shop_api-0.0.3.tar.gz.

File metadata

  • Download URL: drf_shop_api-0.0.3.tar.gz
  • Upload date:
  • Size: 20.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.11.0 Darwin/22.4.0

File hashes

Hashes for drf_shop_api-0.0.3.tar.gz
Algorithm Hash digest
SHA256 8e736687e9d29e61597698e3fe54fd428d33e580477f164a2765457be54f09e0
MD5 ec0d30b602cf0025723e9adcf330ae06
BLAKE2b-256 35475413ea2375cce94784d63b7ebbcc8fb0f5421fe9bcae32cc815be3f0f525

See more details on using hashes here.

File details

Details for the file drf_shop_api-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: drf_shop_api-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 27.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.11.0 Darwin/22.4.0

File hashes

Hashes for drf_shop_api-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 288099bccfcac1c0d872b41354da94e0581c85ad8e55c422152e5f1e555cfbcf
MD5 9e3dabef77656192ef71231cedc61569
BLAKE2b-256 9ff822ab24112473efde55d85fea4225fe7727c5fffebefb59a7fd2d454242e4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page