这允许django将json兼容的数据导出到浏览器。

django_client_data的Python项目详细描述


这允许django将json兼容的数据导出到浏览器。这个 客户端代码作为javascript对象访问数据。

安装

从pypi获得最新的稳定版本

pip install django_client_data

安装应用程序、中间件和上下文处理器

INSTALLED_APPS=(...,'django_client_data',)MIDDLEWARE_CLASSES=(...'django_client_data.middleware.ClientDataMiddleware',)TEMPLATE_CONTEXT_PROCESSORS=(...'django_client_data.context_processors.client_data',)

用法

在视图中调用set_client_data()导出值

fromdjango.views.genericimportTemplateViewfromdjango_client_dataimportset_client_dataclassIndexView(TemplateView):template_name='index.html'defget(self,request,*args,**kwargs):set_client_data(request,**{'foo':'bar'})returnsuper(IndexView,self).get(request,*args,**kwargs)

在页面中包含client_data.html

{%include'django_client_data/client_data.html'%}

javascript对象DJANGO.client_data看起来像

{"DEBUG":false,"STATIC_URL":"/static/","csrftoken":"gSlpOPyxHrdQH3KWUEkXx1wfyqGE7MDo","foo":"bar","url_args":[],"url_kwargs":{},"url_name":"index","user_full_name":null,"user_pk":null,"username":null}

设置

client_data_namespace(默认为'django')是将 创建为包含客户端数据的命名空间。数据是属性 此全局的,名为“客户端数据”。

机制

django客户端数据通过在请求上附加一个client_data属性来工作 反对。client_data.html模板附加了一个client_data属性 到由客户机数据命名空间指示的javascript全局。

待办事项

  • 将“上下文处理器”功能添加到客户端数据,以便自定义值可以 注入

运行测试

./configure.sh
source venv/bin/activate
python django_client_data/tests/manage.py test

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

推荐PyPI第三方库


热门话题
由于java的原因,maven无法运行代码。lang.NoClassDefFoundError:com/fasterxml/jackson/annotation/JsonMerge   Android项目中的java Creative SDK图像编辑器UI   java如何在Android Studio中使用DataOutputStream上传文件并将其他参数传递到web服务器   java倒计时服务打开时崩溃   java将RubyonRails项目转换为JRubyonRails项目   java我的图库意图是不显示图像?为什么?   java如何在春季启动时跳过mongodb/   java@Autowired在Spring中是如何实现的   甲骨文Akka java。util。同时发生的timeoutexception线程池频繁超时   java maven依赖项对spring启动应用程序有何影响?   java Firestore执行复合查询,未截获事件“已修改”   java ItemStreamException:未能初始化读取器,原因是:IllegalStateException:流已初始化。重新开放前关闭   java将空标记解组到集合的新实例中   使用AspectJ的java新手:无法调用aspect   java查找棋类游戏的所有组合   你为什么要这样做and==与Java中的equals方法不一样吗?   如何对使用JavaUUID的代码进行单元测试?