Skip to main content

django-updown is a reusable Django application for youtube like up and down voting.

Project description

=============
django-updown
=============

``django-updown`` is a simple Django application for adding youtube like up and down voting.

-----
Usage
-----
Add ``"updown"`` to your ``INSTALLED_APPS`` then just add a ``RatingField`` to your model and go::

from django.db import models
from updown.fields import RatingField


class Video(models.Model):
rating = RatingField()

You can also allow the user to change his vote::

class Video(models.Model):
rating = RatingField(can_change_vote=True)

Now you can write your own view to submit ratings or use the predefinded::

from updown.views import AddRatingFromModel


urlpatterns = patterns("",
url(r"^(?P<object_id>\d+)/rate/(?P<score>[\d\-]+)$", AddRatingFromModel(), {
'app_label': 'video',
'model': 'Video',
'field_name': 'rating',
}, name="video_rating"),
)

To submit a vote just go to ``video/<id>/rate/(1|-1)``. If you allowed users to
change they're vote, they can do it with the same url.

----------------
Troubleshooting
----------------
If you previously used this app you may get to a point where migrations are
failing.
Try::
./manage.py migrate updown --fake 0001
to skip the initial migration. After this apply the migrations again::
./manage.py migrate updown

------
Thanks
------
Thanks a lot to ``django-ratings`` for the inspiring code

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-updown-0.1.0.tar.gz (8.0 kB view hashes)

Uploaded Source

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