Skip to main content

A reusable Django app that can be used as a FAQ.

Project description

Author: Tobias Lorenz
License: The MIT License
Description: django-frequently

A Django application that can be used as a FAQ, a Q&A, for general
announcements or as a miniblog. There are a lot of functions to increase the
user experience, like sorting by popularity, statistics and ratings.


You need to install the following prerequisites in order to use this app::

pip install Django

If you want to use the cms app or the cms plugin please install additionally::

pip install django-cms

If you want to install the latest stable release from PyPi::

$ pip install django-frequently

If you feel adventurous and want to install the latest commit from GitHub::

$ pip install -e git://

Add ``frequently`` to your ``INSTALLED_APPS``::

# django-cms related


Add the ``frequently`` URLs to your ````::

urlpatterns = [
url(r'^faq/', include('frequently.urls')),

As of version 2 of this app, there are some significant backwards incompatible
changes. If you are a new user, you are fine, existing users must check
the migration docs at
[cmsplugin-frequently]( When
you are ready to install this app, set the following setting to `True` in
your ``::


Now you can migrate your database::

./ migrate frequently


Just visit the root URL of the app. Let's assume you hooked the app into your
```` at `f/`, then visit ``. You will see the entry
overview. As you can see, you can provide a form to let users submit their own
entries @ ``.

The entry handling is made by AJAX and jQuery, but is also functional without
Javascript enabled.

* The entries can be up- or downvoted.
* The entries are sorted by popularity.
* Entries can be fixed via an extra attribute.
* The last view date and the amount of all views is tracked.



Default: ``False``

Set this to ``True`` if you want to allow anonymous users to see the list view
and to submit new questions.


Default: ``True``

Set this to ``False`` in order to hide the email field on the question create
form. This makes sense when you have set ``FREQUENTLY_ALLOW_ANONYMOUS`` to
``False`` - in this case you already know the email address of the user.

Template Tag

We provide a template tag to render entries of a certain category.:

{% render_category 'slug-of-the-category' %}

IMPORTANT: Make sure to include the js file in this template:

<script type="text/javascript" src="{% static "frequently/js/frequently.js" %}"></script>


If you want to contribute to this project, please perform the following steps::

# Fork this repository
# Clone your fork
$ mkvirtualenv -p python2.7 django-frequently
$ pip install -r test_requirements.txt
$ python test
# You should get no failing tests

$ git co -b feature_branch master
# Implement your feature and tests
$ git add . && git commit
$ git push origin feature_branch
# Send us a pull request for your feature branch

Whenever you run the tests a coverage output will be generated in
``tests/coverage/index.html``. When adding new features, please make sure that
you keep the coverage at 100%.

If you are making changes that need to be tested in a browser (i.e. to the
CSS or JS files), you might want to setup a Django project, follow the
installation instructions above, then run ``python develop``. This
will just place an egg-link to your cloned fork in your project's virtualenv.


See the issue list on GitHub for features that are planned for the next

Keywords: django,app,reusable,faq,questions,answers
Platform: OS Independent

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-frequently-2.0.0.tar.gz (20.7 kB view hashes)

Uploaded source

Built Distribution

django_frequently-2.0.0-py3-none-any.whl (28.4 kB view hashes)

Uploaded py3

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