{ "info": { "author": "Dmitriy Ponomarev", "author_email": "demdxx@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Django cors cache modeule\n=========================\n\n\u041c\u043e\u0434\u0443\u043b\u044c \u0434\u043b\u044f \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u0441\u043f\u0435\u043a\u0442\u0440\u0430 \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.\n\n\u041a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 \u0448\u0430\u0431\u043b\u043e\u043d\u0430\u0445\n----------------------\n\n===Query cache===\n\n\u041a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f get/count \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432, \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u043c\u0438.\n\n===\u041e\u0431\u044b\u0447\u043d\u044b\u0439 \u043a\u044d\u0448===\n\n\u041f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0439 \u0442\u0435\u0433 \u0432 Django.\n\n\t{% load cors_cache %}\n\t\n\t{% cache \"cahce_block_name\" var1 var2 ... varN cache=cache2 %}\n\t\tContent...\n\t{% endcache %}\n\n===\u0423\u043c\u043d\u044b\u0439 \u043a\u044d\u0448===\n\n\u0414\u043b\u044f \u0431\u043b\u043e\u043a\u043e\u0432 \u043a\u044d\u0448\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u0440\u0430\u0437\u0443\n\u043f\u043e\u0441\u043b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f.\n\n smart_cache block_name [model_links]\n model_links - \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0442\u0438\u043f\u0430 Model\n\n\n\t{% load cors_cache %}\n\t\n\t{% smart_cache \"cahce_block_name\" request.user cache=cache2 %}\n\t\tContent...\n\t{% end_smart_cache %}\n\n\n\u0414\u043b\u044f \u0441\u0431\u0440\u043e\u0441\u0430 \u043a\u044d\u0448\u0430 \u043f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 \u043a\u044d\u0448\u0435\u043c\n\u043c\u043e\u0436\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u0440\u0442\u0443 \u0438\u043d\u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438, \u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 links.\n\t\n\t{% smart_cache \"cahce_block_name\" request.user cache=cache2 links=\"news.article.user\" %}\n\t\tContent...\n\t{% end_smart_cache %}\n\n\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0438\u0437\u043c\u0435\u043d\u044f\u044f \u0438\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u044f *news.article*, \u0438\u0449\u0435\u0442\u0441\u044f \u0442\u0435\u0433 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c\n*cahce_block_name* \u0438 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u043c \u0441 \u043f\u043e\u043b\u0435\u043c user \u0432 \u043c\u043e\u0434\u0435\u043b\u0438 news.\n\u041d\u043e \u043b\u0443\u0447\u0448\u0435 \u0440\u0435\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u0440\u0442\u0443 \u0438\u043d\u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f \u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u0442 \u0442\u0430\u043a\u043e\u0439:\n\n\tCORSCACHE_EXTENDET_LINKS = {\n\t\t'news.article': {\n\t\t\t'cahce_block_name': {'links':('user',),'cache':'cache2'},\n\t\t},\n\t}\n\nExample settings\n----------------\n\n\t# -*- coding: utf-8 -*-\n\t\n\tCORSCACHE_DEFAULT_TIME = 86400 # 24 Hour\n\tCORSCACHE_DEFAULT_CACHE = 'level1'\n\t\n\t# \u041f\u0440\u0435\u0444\u0438\u043a\u0441\u044b \u043a \u0438\u043c\u0435\u043d\u0430\u043c \u043a\u044d\u0448\u0430\n\tCORSCACHE_BLOCKS_PREFIX = 'blocks'\n\tCORSCACHE_QUERYS_PREFIX = 'queryes'\n\n CORSCACHE_ACTIVE = True\n CORSCACHE_QUERYCACHE_ACTIVE = True\n\t\n\t#\n\t# \u0418\u043d\u0442\u0435\u043b\u0435\u043a\u0442 - \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043e\u0442\u0447\u0438\u0441\u0442\u043a\u0430 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432.\n\t# \u0415\u0441\u043b\u0438 \u043e\u0442\u0447\u0438\u0441\u0442\u043a\u0430 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0445 \u0442\u043e \u043b\u0443\u0447\u0448\u0435 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c.\n\t#\n\tCORSCACHE_INTELLIGENCE = True\n\t\n\t#\n\t# \u0421\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u0441\u0432\u044f\u0437\u043a\u0438. [ \u041a\u0430\u0440\u0442\u0430 \u0438\u043d\u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 ]\n\t#\n\t# \u0418\u043d\u043e\u0433\u0434\u0430 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0443 \u0431\u043b\u043e\u043a\u0430 \u043a \u043e\u0431\u044a\u0435\u043a\u0442\u0443,\n\t# \u041f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u044d\u0442\u043e \u043d\u0435\u0438\u043c\u0435\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u0441\u043c\u044b\u0441\u043b\u0430\n\t# \u0412\u0435\u0434\u044c \u043d\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u044c \u0447\u0438\u0441\u043b\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432,\n\t# \u0438 \u0432\u043e\u0442 \u0437\u0434\u0435\u0441\u044c \u043f\u043e\u043c\u043e\u0433\u0443\u0442 \u0441\u0432\u044f\u0437\u043a\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0441 \u0431\u043b\u043e\u043a\u0430\u043c\u0438.\n\t#\n\t# \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043c \u043a\u0430\u043a\u043e\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u043b\u0438\u044f\u0442\u044c \u043d\u0430 \u0431\u043b\u043e\u043a\n\t#\n\t# 'news.article': { 'news': {'links':('user',),'cache':'cacheName'}, 'catalog.product': ('section',) }\n\t# \u041e\u043d \u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 \u0431\u043b\u043e\u043a \u043d\u043e\u0432\u043e\u0441\u0442\u0435\u0439 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u0441\u0432\u043e\u0435\u0439 \u0441\u0432\u044f\u0437\u0438 \u0441 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c.\n\t# \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u043b\u043e\u043a \u0443 \u043d\u0430\u0441 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d \u043a\u0430\u043a:\n\t#\n\t# {% smart_cache \"news\" autor cache=cacheName %} ... {% end_smart_cache %}\n\t#\n\t# \u041f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0438\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043d\u043e\u0432\u043e\u0441\u0442\u0438 \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u044d\u0448 \u044d\u0442\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u0443 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 \u0441 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c\n\t#\n\t\n\t# \u041a\u0430\u0440\u0442\u0430 \u0438\u043d\u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438\n\tCORSCACHE_EXTENDET_LINKS = {\n\t\t# \u0418\u043d\u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u044f \u043f\u043e \u043c\u043e\u0438\u043c \u0434\u0440\u0443\u0437\u044c\u044f\u043c\n\t\t# \u041f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438/\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0438 \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0434\u0440\u0443\u0433\u0430\n\t\t'friendlent.friend': {\n\t\t\t'user_info': ('user',), # \u0418\u043d\u0432\u0430\u043b\u0438\u0434\u0438\u0440\u0443\u0435\u043c \u0431\u043b\u043e\u043a user_info \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 \u0441 user\n\t\t\t'planes_block': ('user',), # \u041e\u0431\u043d\u043e\u0432\u0438\u043c \u043f\u043b\u0430\u043d\u044b\n\t\t\t'notifi_block': ('user',), # \u041e\u0431\u043d\u043e\u0432\u0438\u043c \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f\n\t\t\t'notifies_index': ('user',), # \u041e\u0431\u043d\u043e\u0432\u0438\u043c \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f index\n\t\t\t'friendlent_general': ('user',), # \u0411\u043b\u043e\u043a \u0434\u0440\u0443\u0437\u0435\u0439 \u0441\u043f\u0440\u0430\u0432\u0430\n\t\t},\n\t\t'profile.profile': {\n\t\t\t'user_info': ('user',), # \u0418\u043d\u0432\u0430\u043b\u0438\u0434\u0438\u0440\u0443\u0435\u043c \u0431\u043b\u043e\u043a user_info \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 \u0441 user\n\t\t},\n\t\t# \u0411\u043b\u043e\u043a \u0445\u043e\u0447\u0443 \u043f\u043e\u0431\u044b\u0432\u0430\u0442\u044c \u0441\u043f\u0440\u0430\u0432\u0430\n\t\t'geographi.iwas': {\n\t\t\t'wantvisited_city': {'links':('user',),'cache':'level2'},\n\t\t\t'visited_city': {'links':('user',),'cache':'level2'},\n\t\t},\n\t\t# \u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439\n\t\t'reester.atom': {\n\t\t\t'notifi_block': ('user',), # \u041e\u0431\u043d\u043e\u0432\u0438\u043c \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f\n\t\t\t'notifies_index': ('user',), # \u041e\u0431\u043d\u043e\u0432\u0438\u043c \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f index\n\t\t},\n\t}\n\t\n\t# \u041a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432\n\tCORSCACHE_QUERY_CACHE = {\n\t\t'auth.user':{'get':3600}, # \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0430 \u0447\u0430\u0441\n\t\t'profile.profile':{'get':3600}, # \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u043d\u0430 \u0447\u0430\u0441\n\t\t'*.*': {'count':3600,'cache':'level2'}, # \u041a\u044d\u0448\u0438\u0440\u0443\u0435\u043c \u0432\u0441\u0435 count \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043d\u0430 \u0447\u0430\u0441\n\t}", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/demdxx/django-cors-cache", "keywords": null, "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "django-cors-cache", "package_url": "https://pypi.org/project/django-cors-cache/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-cors-cache/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/demdxx/django-cors-cache" }, "release_url": "https://pypi.org/project/django-cors-cache/0.0.0/", "requires_dist": null, "requires_python": null, "summary": "slick ORM cache and invalidation for Django", "version": "0.0.0" }, "last_serial": 369054, "releases": { "0.0.0": [] }, "urls": [] }