Skip to main content

Adding Reviews to your django app.

Project description

DJANGO REVIEWS & RATING

Add reviews and ratings functionalities to your dango app.

Installation

pip install djreviews

Usage

Extending functionality in models

from django.db import models
from djreviews.models import BaseReviewModel, BaseReviewedModel


class ProductReview(BaseReviewModel):
    """
    Product Reviews
    """


class Product(BaseReviewedModel):
    name = models.CharField(max_length=20)
    description = models.TextField()
    objects = models.Manager()

    # important
    REVIEW_MODEL = ProductReview

usage in views

product = Product.objects.get(pk=product_pk)
customer = Customer.objects.get(pk=customer_pk)

product.add_review(
    content=review_text,
    rating=rating_score,
    reviewer=customer,
)

# OR

ProductReview.objects.add_review(
    content=review_text,
    rating=rating_score,
    reviewed_object=product,
    reviewer_object=customer,
)

in templates

{% for review in object.reviews.all|dictsortreversed:"id" %}
<div>
    <p>{{ review.reviewer }}</p>
    <p>rating: {{ review.rating }}</p>
    <p>review: {{ review.content }}</p>
</div>
{% empty %}
<p>No reviews</p>
{% endfor %}

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

djreviews-0.0.1.tar.gz (3.0 kB view hashes)

Uploaded Source

Built Distribution

djreviews-0.0.1-py3-none-any.whl (4.0 kB view hashes)

Uploaded Python 3

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