小编has*_*ash的帖子

Django whitenoise的缺点

有很多文章描述了使用whitenoise而不是其他配置来提供静态文件的优点.但有关它的缺点的信息很难找到

使用whitenoise提供静态文件有什么缺点或缺点吗?

如果问题是广泛的,我现在使用NGINX来提供我的静态文件(我也使用它和gunicorn来提供我的Django应用程序),我发现它也很容易配置它

django nginx django-staticfiles whitenoise

15
推荐指数
1
解决办法
1187
查看次数

从 DinD 内部运行的容器访问 GitLab CI 服务

我正在尝试在 GitLab CI 中运行持续集成,其中包括:

  • 构建docker镜像
  • 运行测试
  • 将 docker 镜像推送到注册表

这些都在一项工作中运行。我可以毫无问题地做到这一点,直到出现一些需要与数据库通信的测试。我的容器无法与定义的 Postgres 服务通信。

我已经用简单的脚本在公共存储库中重现了它ping

image: docker:stable

services:
  - docker:dind
  - postgres:latest

job1:
  script:
    - ping postgres -c 5
    - docker run --rm --network="host" alpine:latest sh -c "ping postgres -c 5"
Run Code Online (Sandbox Code Playgroud)

第一个脚本可以正常运行,但第二个脚本失败并出现错误

ping: bad address 'postgres'
Run Code Online (Sandbox Code Playgroud)

我如何访问该服务?

或者我应该在不同的工作中运行测试?

gitlab docker gitlab-ci

6
推荐指数
1
解决办法
1224
查看次数

django-filter上的daterange

我使用Django,Django REST Framework加上django-filters(alex/django-filter).

我有一个带有字段start_date和end_date的模型,我正在尝试构建一个日期api-endpoint,它应该接收一个日期并回复其中的项目(start_date <date)和(end_date> date).有一个日期范围过滤器(https://django-filter.readthedocs.org/en/latest/ref/filters.html#daterangefilter),但我无法弄清楚如何使用它.到目前为止,这是我的代码:

urls.py:

url(r'^api/sales/$', views.SaleItemList.as_view(), name='sales'),
Run Code Online (Sandbox Code Playgroud)

views.py:

class SaleItemFilter(django_filters.FilterSet):
    city = django_filters.CharFilter(name='trade_item__vendor__city')
    title = django_filters.CharFilter(name='trade_item__title')
    date = django_filters.DateRangeFilter()

    class Meta:
        model = SaleItem
        fields = ['sale_price', 'sale_date_start', 'sale_date_end', 'trade_item']

class SaleItemList(generics.ListAPIView):
    queryset = SaleItem.objects.all()
    serializer_class = SaleItemListSerializer
    filter_class = SaleItemFilter
Run Code Online (Sandbox Code Playgroud)

serializers.py:

class SaleItemListSerializer(serializers.ModelSerializer):
    class Meta:
        model = SaleItem
        fields = ("sale_price", "sale_date_start", "sale_date_end", "trade_item", "slogan")
Run Code Online (Sandbox Code Playgroud)

到目前为止,我可以过滤确切的日期:

/ API /销售/?sale_date_start = 2015年5月22日

python django django-filters django-rest-framework

5
推荐指数
3
解决办法
9644
查看次数