小编Dav*_*own的帖子

将计数字段添加到django rest框架序列化程序

我正在序列化内置的django Group模型,并希望在序列化程序中添加一个字段来计算组中的用户数.我目前正在使用以下序列化程序:

class GroupSerializer(serializers.ModelSerializer):
    class Meta:
        model = Group
        fields = ('id', 'name', 'user_set')
Run Code Online (Sandbox Code Playgroud)

这将返回组ID和名称以及组中的用户数组(用户ID):

{
    "id": 3,
    "name": "Test1",
    "user_set": [
      9
    ]
}
Run Code Online (Sandbox Code Playgroud)

我希望改为输出是这样的:

{
    "id": 3,
    "name": "Test1",
    "user_count": 1
}
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.谢谢.

python django serialization

22
推荐指数
2
解决办法
1万
查看次数

从Django REST Swagger中排除URL

我有几个URL要从REST API文档中排除.我正在使用Django REST Swagger,我能找到的唯一文档(https://github.com/marcgibbons/django-rest-swagger)并没有真正告诉我.在settings.py中有SWAGGER_SETTINGS的"exclude_namespaces"部分,但没有真正的解释或如何使用它的示例.

简而言之,我想从以下开头的文档中排除任何网址:

/api/jobs/status/
/api/jobs/parameters/
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做?

提前感谢您提供的任何帮助:P

python django rest swagger

15
推荐指数
4
解决办法
7546
查看次数

Django URL - 尾部斜杠被添加到变量值

我有一个用Apache托管的django应用程序.我正忙着使用django restframework来创建API,但我遇到了URL问题.举个例子,我有一个这样的URL:

url(r'path/to/endpoint/(?P<db_id>.+)/$', views.PathDetail.as_view())
Run Code Online (Sandbox Code Playgroud)

如果我尝试访问此URL并且不包含尾部斜杠,则它将不匹配.如果我在最后添加一个问号,如下所示:

url(r'path/to/endpoint/(?P<db_id>.+)/?', views.PathDetail.as_view())
Run Code Online (Sandbox Code Playgroud)

这匹配使用和不使用尾部斜杠.唯一的问题是如果使用尾部斜杠,它现在会包含在我视图中的db_id变量中.因此,当它搜索数据库时,id不匹配.我不想通过字符串处理来查看我的所有视图并从我的url变量中删除尾部斜杠.

所以我的问题是,使用和不使用尾部斜杠进行url匹配的最佳方法是什么,而不包括发送到视图的参数中的尾部斜杠?

python django django-urls

3
推荐指数
1
解决办法
1636
查看次数

标签 统计

django ×3

python ×3

django-urls ×1

rest ×1

serialization ×1

swagger ×1