fastapi 如何方便的处理大于小于的 CRUD 操作?

fastapi 如何方便的处理大于小于的 CRUD 操作?

Django 有一个 django-filter

如果前端需要 范围 select 某个字段,可以在 Filter 中使用 lookup_expr 实现

比如 url: /?company=1629,55,8,14,20,1296,1447,1591,1355&confirm_start=2023-01-31&confirm_end=2023-02-01&score_min=0&score_max=99999

我只要这么定义代码

class SeriesFilter(filters.FilterSet):

company = ListFilter(field_name='company_id') # , lookup_expr='icontains')

confirm_start = DateTimeFilter(field_name='confirm_at', lookup_expr='gte')

confirm_end = DateTimeFilter(field_name='confirm_at', lookup_expr='lte')

created_start = DateTimeFilter(field_name='created_at', lookup_expr='gte')

created_end = DateTimeFilter(field_name='created_at', lookup_expr='lte')

score_min = filters.NumberFilter(

field_name='rating_score', lookup_expr='gte')

score_max = filters.NumberFilter(

field_name='rating_score', lookup_expr='lte')

drf 就会帮我自动转成 sql 的 where 子条件, where company in (1629,55,8,14,20,1296,1447,1591,1355) and confirm_at > '2023-01-31' and confirm_at < '2023-02-01' and score > 0 and score < 99999

感觉这样很方便

fastapi 下有什么方法可以类似这样便捷实现呢?

以上是 fastapi 如何方便的处理大于小于的 CRUD 操作? 的全部内容, 来源链接: utcz.com/p/938732.html

回到顶部