Skip to main content

Pure Postgresql search backend for Django Oscar

Project description

Maintainability Maintainability https://codecov.io/gh/snake-soft/django-oscar-pg-search/branch/master/graph/badge.svg?token=TALCIZ5E3Q https://img.shields.io/badge/License-GPLv3-blue.svg

Postgresql search handler for Django-Oscar

Careful: This is originally created inside a project not tested in a reusable environment, yet.

This creates a search handler without the need of any search backend. It is designed for the e-commerce framework Oscar.

It is implemented a little bit expensive but uses 4 annotated search vectors: * upc * title * meta_description * meta_title

This way the search can be manipulated through the meta fields. This package is not testet against generic sites, yet. It is running productive in a heavily customized env for many months now. I think it should scale up to 5000 Products with 10 Attributes depending on how the products are loaded. We use it fully lazy with endless scrolling.

To-Do

  • Dynamic creation of the filter fields

  • Writing Tests

Features

  • Don’t need to use some additional search backend like elastic

  • Creates filters (facets) for:
    • Data that is directly attached to the Product model including foreign key choices

    • AttributeValues of the products

    • StockRecord entries

Installation

Install using pip:

pip install django-oscar-pg-search
# settings.py
INSTALLED_APPS = [
    # ...
    'oscar_pg_search.apps.PgSearchConfig',
    # ...
]
OSCAR_PRODUCT_SEARCH_HANDLER = 'oscar_pg_search.postgres_search_handler.PostgresSearchHandler'

Settings

If you want to add some fields that are directly attached to the Product model:

# settings.py
OSCAR_ATTACHED_PRODUCT_FIELDS = ['is_public', 'deposit', 'volume', 'weight',]

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

django-oscar-pg-search-0.8.4.tar.gz (13.0 kB view details)

Uploaded Source

Built Distribution

django_oscar_pg_search-0.8.4-py3-none-any.whl (14.0 kB view details)

Uploaded Python 3

File details

Details for the file django-oscar-pg-search-0.8.4.tar.gz.

File metadata

  • Download URL: django-oscar-pg-search-0.8.4.tar.gz
  • Upload date:
  • Size: 13.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for django-oscar-pg-search-0.8.4.tar.gz
Algorithm Hash digest
SHA256 f99231d93a16b2b0622419371d6f864620d2757d6a82d1d64516f3555052dab5
MD5 d4c791d477526189248c9f4d931cc56d
BLAKE2b-256 6de889de553edfab3da125f2e4c2774655ccad55f443528528ea06a88acee04d

See more details on using hashes here.

Provenance

File details

Details for the file django_oscar_pg_search-0.8.4-py3-none-any.whl.

File metadata

  • Download URL: django_oscar_pg_search-0.8.4-py3-none-any.whl
  • Upload date:
  • Size: 14.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for django_oscar_pg_search-0.8.4-py3-none-any.whl
Algorithm Hash digest
SHA256 5605c91c6e394c72d4644e2a22e83e60ff86c6bbca9d03868f4f00132c66e533
MD5 b376c0003d9e6f17bf721b48a62f899a
BLAKE2b-256 bc6b75ef1daa113c1f7ba941b7c9685ba2f4d8b55ac9941143c7e36555a961fa

See more details on using hashes here.

Provenance

Supported by

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