django rest框架的camel-case-json支持

djangorestframework-camel-case2的Python项目详细描述


django rest framework json camelcase

Build StatusPyPI

对django rest框架的camel-case-json支持。

注意:这是 djangorestframework-camel-case 目前似乎还没有维护。

安装

在命令行::

$ pip install djangorestframework-camel-case2

将呈现和解析器添加到django设置文件中。

REST_FRAMEWORK={'DEFAULT_RENDERER_CLASSES':('djangorestframework_camel_case2.render.CamelCaseJSONRenderer',# Any other renders),'DEFAULT_PARSER_CLASSES':('djangorestframework_camel_case2.parser.CamelCaseJSONParser',# Any other parsers),}

交换渲染器

默认情况下,包使用rest_framework.renderers.JSONRenderer。如果你愿意 使用另一个渲染器(唯一可能的选择是 rest_framework.renderers.UnicodeJSONRenderer,仅在drf<;3.0中可用,必须在django中指定 设置文件。

# ...JSON_CAMEL_CASE={'RENDERER_CLASS':'rest_framework.renderers.UnicodeJSONRenderer'}# ...

下划线大小选项

https://github.com/krasa/StringManipulation/issues/8#issuecomment-121203018中提出 蛇案有两个惯例。

# Case 1 (Package default)
v2Counter -> v_2_counter
fooBar2 -> foo_bar_2

# Case 2
v2Counter -> v2_counter
fooBar2 -> foo_bar2

默认情况下,包使用第一种情况。要使用第二种情况,请在django设置文件中指定它。

REST_FRAMEWORK={# ...'JSON_UNDERSCOREIZE':{'no_underscore_before_number':True,},# ...}

或者,您可以通过设置json_underscoreize

fromdjangorestframework_camel_case2.parserimportCamelCaseJSONParserfromrest_framework.genericsimportCreateAPIViewclassNoUnderscoreBeforeNumberCamelCaseJSONParser(CamelCaseJSONParser):json_underscoreize={'no_underscore_before_number':True}classMyView(CreateAPIView):queryset=MyModel.objects.all()serializer_class=MySerializerparser_classes=(NoUnderscoreBeforeNumberCamelCaseJSONParser,)

运行测试

要运行当前的测试套件,请从项目的根目录执行以下操作

$ python -m unittest discover

更改日志

[未发布]

[0.2.4]

  • json_underscoreize作为类属性添加到CamelCaseJSONParser中,以支持在同一项目中的数字前加下划线和不加下划线的变量
  • 与DRF 3.10结合使用的6个固定导入

[0.2.3]

固定

  • 修复了pypi上包中缺少changelog.md的问题

[0.2.2]

更改

  • 更新自述文件

移除

  • 旧的readme.rst和history.rst

[0.2.1]

添加了

  • 支持发电机和其他电磁阀
  • json_下划线大小选项,用于更改欠压缩函数的行为

更改

  • 更改了包的名称和自述文件

[0.1.0]-2013-12-20

  • pypi上的第一个版本。

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

推荐PyPI第三方库


热门话题
图像处理Java 8 ImageIO在Linux中无法正确读取JPEG   spring如何用Java 1.4兼容版本替换@Resource注释   java Http请求参数类型传播   在web浏览器中看不到Java Maven Tomcatplugin web应用程序   jvm在Java中使用直接内存的目的是什么?   如何从列表转换为字符串java   java setAdapter gridview发送上下文   SwingJava。方法上的lang.NullPointerException   java什么是shell脚本、makefile和ant文件   当使用getGraphics()方法时,java JPanel图形会闪烁   java如何将迭代转换为递归?   java为什么我的抽屉菜单在同一个XML上有ConstraintLayout时没有响应?   java如何在图像上画一个圆?   Android studio:Rabbitmq:Error:java。lang.ClassNotFoundException:类io。千分尺。果心仪器找不到仪表注册表