Skip to main content

Easy plugging of user evaluation system to any django object.

Project description

Valuate
=======
A portable application to easily associate a user valuation (rating, like etc)
to any object, just on the basis of template tags. No configuration of existing
models and views required.


Installation
============

- Run `python setup.py install`
- Include 'valuate' in your installed apps settings.
- Add `(r'^valuate/', include('valuate.urls'))` to your main urls.py.
- Ensure you have request context preprocessor added in the list of preprocessors
or pass request varible context to views.


Usage
=====
Create a valuation type from admin site.
Let us say:
**Rating**

- Excellent 5
- Good 4
- Average 3
- Bad 2
- Poor 1

or

**LikeDislike**

- Like 1
- Dislike 0


**Available settings:**

`DEFAULT_VALUATION_TYPE_ID`: The ID of default valuation type to be used in the project
Load the template tags: `{% load valuation %}`

**Available tags:**

{% render_valuate form of object for valuation_type %}
------------------------------------------------------
Renders the valuation form for the provided object.
Override template: 'valuate/form.html' for modifying the look.

{% render_valuate form of object for valuation_type %}
---------------------------------------------------------
Renders the status according to the score of various choices.
Override template: 'valuate/status.html' for modifying the look.

{% get_valuate ajax_fields of object for valuation_type as variable %}
---------------------------------------------------------------------
Get the fields as dictionary required for an ajax post request in the context
or directly.
Variables available:
For post request: 'content_type','object_pk', 'choice' (to be selected
by user, can have an initial value if user has already submitted once)
'choices': dictionary of choices for user to provide the 'value' data.
'target': target for the request.
'vtype'": the valuation type.
On a successfull request, true will be retuned.
If you are not using a popular javascript liberary, pass on a POST
variable with name `ajax` and a `true` value.

{% get_valuate form of object for valuation_type as variable %}
--------------------------------------------------------------
Gets the valuation form in context or directly.
User `form_name.target` to access the target for the post request.

{% get_valuate score of object for valuation_type as variable %}
-----------------------------------------------------
The average score of the object using the corresponding values
of chioces.

{% get_valuate choice_count of object for_chioce choice_name for valuation_type as variable %}
----------------------------------------------------------------------------------------------
Returns the score count for a perticular choice of an object. Choice
should be provided with quotes (as string).

*The `for valuation_type` and `as variable` are optional arguments*

And Thats it!

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-valuate-1.0-beta-2.2.tar.gz (13.7 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