小编Alb*_*kov的帖子

过滤django休息框架

在我的项目中,我使用django rest框架.要过滤结果,我使用django_filters后端.有我的代码:

models.py

from django.db import models


class Region(models.Model):
    name = models.CharField(max_length=100, blank=True, null=False)


class Town(models.Model):
    region = models.ForeignKey(Region)
    name = models.CharField(max_length=100, blank=True, null=False')
Run Code Online (Sandbox Code Playgroud)

filters.py

import django_filters
from models import Town


class TownFilter(django_filters.FilterSet):
    region = django_filters.CharFilter(name="region__name", lookup_type="contains")
    town = django_filters.CharFilter(name="name", lookup_type="contains")

    class Meta:
        model = Town
        fields = ['region', 'town']
Run Code Online (Sandbox Code Playgroud)

views.py

from models import Town
from rest_framework import generics
from serializers import TownSerializer
from filters import TownFilter


class TownList(generics.ListAPIView):
    queryset = Town.objects.all()
    serializer_class = TownSerializer
    filter_class = TownFilter
Run Code Online (Sandbox Code Playgroud)

所以,我可以将?region …

python django django-filters django-rest-framework

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

如何用另一种语言(不是Python)编写Celery worker /任务?

我知道Celery worker可以接收消息协议v2格式的消息。该协议通过lang标头支持多种语言:

...
application_headers={
    'lang': 'py',
    'task': 'proj.tasks.add',
    ...
}
...
Run Code Online (Sandbox Code Playgroud)

在书面文档中,工作人员可以将消息重定向到支持该语言的工作人员,并且没有有关如何以Java,PHP等编写工作人员或任务的信息。

php python java celery

5
推荐指数
1
解决办法
457
查看次数