{ "info": { "author": "zencore", "author_email": "dobetter@zencore.cn", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "django-redis-counter\n====================\n\nDjango application that keeps content visit count in redis first, then dump to database via extra job.\n\n\nInstall\n-------\n\n::\n\n pip install django-redis-counter\n\nDependencies\n------------\n\n- django\n- redis\n\nUsage\n-----\n\n1. Add drc in INSTALLED_APPS in django settings.py. drc is short for django-redis-counter.\n\n::\n\n INSTALLED_APPS = [\n ...\n 'drc',\n ...\n ]\n\n2. Define counter models in app's models.py.\n\n::\n\n from drc.models import Counter\n\n class Page(models.Model):\n title = models.CharField(max_length=32)\n ...\n\n class PageCounter(Counter):\n pass\n\n3. Call incr in views.\n\n::\n\n def display_page(request, page_id):\n page = Page.objects.get(pk=page_id)\n page_visit_number = PageCounter.incr(page)\n return render(request, \"page.html\", {\n \"page\": page,\n \"page_visit_number\": page_visit_number,\n })\n\n4. Create a script to dump cached data to database. Name the script to page_counter_dump.sh or what ever you like.\n\n::\n\n #!/bin/bash\n cd /your/project/path\n python manage.py drc-dump\n\n5. Add dump task as schedule job, e.g. crontab job.\n\n::\n\n * * * * * page_counter_dump.sh # dump the cached data every minutes\n 1 * * * * page_counter_dump.sh # dump the cached data every hour.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/appstore-zencore/django-redis-counter", "keywords": "django-redis-counter", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "django-redis-counter", "package_url": "https://pypi.org/project/django-redis-counter/", "platform": "", "project_url": "https://pypi.org/project/django-redis-counter/", "project_urls": { "Homepage": "https://github.com/appstore-zencore/django-redis-counter" }, "release_url": "https://pypi.org/project/django-redis-counter/0.1.1/", "requires_dist": null, "requires_python": "", "summary": "Django application that keeps content visit count in redis first, then dump to database via extra job.", "version": "0.1.1" }, "last_serial": 3672349, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "9a1d1552999bdeff640c23f8ca70bf58", "sha256": "eae79f75ef12a986f8acdb0ab673d32733b5f7ffeb25c212759701b5b4214325" }, "downloads": -1, "filename": "django-redis-counter-0.1.0.tar.gz", "has_sig": false, "md5_digest": "9a1d1552999bdeff640c23f8ca70bf58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4025, "upload_time": "2018-03-15T12:16:16", "url": "https://files.pythonhosted.org/packages/2a/65/e6df9f373a5db1cd5141c1565d7c6c0d62c1c7eb52e6c26df4eac19eb530/django-redis-counter-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "8b0d2dc8d6d91f46bf1163cf99751895", "sha256": "af64625dd1f09a1f986e052d4982f6156687d53010c2983a26e28660bd72ef33" }, "downloads": -1, "filename": "django-redis-counter-0.1.1.tar.gz", "has_sig": false, "md5_digest": "8b0d2dc8d6d91f46bf1163cf99751895", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4012, "upload_time": "2018-03-15T12:54:01", "url": "https://files.pythonhosted.org/packages/98/df/7ededad31f1f34e3a7dff62ef47e3d742cda4ef820e3b1ac6fb054c133b5/django-redis-counter-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8b0d2dc8d6d91f46bf1163cf99751895", "sha256": "af64625dd1f09a1f986e052d4982f6156687d53010c2983a26e28660bd72ef33" }, "downloads": -1, "filename": "django-redis-counter-0.1.1.tar.gz", "has_sig": false, "md5_digest": "8b0d2dc8d6d91f46bf1163cf99751895", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4012, "upload_time": "2018-03-15T12:54:01", "url": "https://files.pythonhosted.org/packages/98/df/7ededad31f1f34e3a7dff62ef47e3d742cda4ef820e3b1ac6fb054c133b5/django-redis-counter-0.1.1.tar.gz" } ] }