django视图的上下文修饰符

django-context-decorator的Python项目详细描述


Continuous integrationCoveragePyPI

django-context-decorator是一个用于django消除需求的python包 在几乎所有django视图中调用super().get_context_data(**kwargs)

用法

fromdjango_context_decoratorimportcontextfromdjango.utils.functionalimportcached_propertyfromdjango.views.genericimportTemplateViewclassMyView(TemplateView):template_name='path/to/template.html'@contextdefcontext_variable(self):return'context value'@context@propertydefcontext_property(self):return'context property'@context@cached_propertydefexpensive_context_property(self):return'expensive context property'

现在您可以访问{{ context_variable }}{{ context_property }} 以及模板中的{{ expensive_context_property }}

请注意:当这个包与@cached_propertydecorator一起工作时, 请确保在上面添加@contextdecorator@cached_property装饰器。

限制

由于使用__set_name__,此包仅限于与python 3.6+一起使用。

开发

所有代码都位于django_context_decorator.py。测试由 pytest来自以test_开头的所有文件。要运行测试,请启动 虚拟环境,安装依赖项,然后运行pytest

pip install django pytest pytest-cov
py.test --cov-report term --cov=django_context_decorator

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java类。getResource和ClassLoader。getSystemResource:有没有理由选择其中一个而不是另一个?   在Java中以编程方式粘贴后恢复剪贴板   Java字符串到日期没有时间   JavaSpring注释:@Component起作用,@Repository不起作用   java“addScript”在HSQL中是否有最大记录计数?   java如何将值从JDialog框返回到父JFrame?   java我的模块库的用户有没有办法访问尚未导出的类?   java javac:未找到命令   java如何解决jsoup错误:无法找到请求目标的有效证书路径   类中的java作用域变量   Java中集合实现中的arraylist add()方法不起作用   java如何使用while循环和从用户接收输入来近似Pi?   java Spring安全CSRF培训模式   在安卓系统中,如何通过在警报框外单击来限制用户?