在运行了我的Django应用程序的docker图像后,我注意到不再提供下载文件的功能.我得到的唯一东西是我目前所在的网站页面的副本,而不是所请求的文件.

在当地,它运行得很好.

下面是我的代码的组织方式:

main/views.py年中:

path_to_report = f"media/Reports/{request.user.username}/{request.user.username}{now.hour}{now.minute}{now.second}.txt" 


return render(request, "main/result.html", {"dic_files": dic_files, "nbr":len(files), "dic_small":dic_small, "dic_projects":dic_projects, "path_to_report":f"/app/{path_to_report}"})

main/result.html年内

<a href=/{{path_to_report}} download>

        <button class="btn btn-success" name="rapport" value="rapport"> Télécharger votre rapport</button>

</a>

以下是我的dockerfile条:

# Use the official lightweight Python image.

# https://hub.docker.com/_/python

FROM python:3.8



# Allow statements and log messages to immediately appear in the Knative logs

ENV PYTHONUNBUFFERED True



EXPOSE 8000



## api-transport-https installation

RUN apt-get install apt-transport-https ca-certificates gnupg



# Copy local code to the container image.

ENV APP_HOME /app

WORKDIR $APP_HOME

COPY . ./



# Install production dependencies.

RUN pip3 install --upgrade pip setuptools wheel

RUN pip3 install -r requirements.txt



RUN python manage.py makemigrations

RUN python manage.py migrate

RUN python manage.py collectstatic --no-input



ENTRYPOINT ["gunicorn", "myteam.wsgi:application", "--bind=0.0.0.0:8000", "--workers=4", "--timeout=300", "--log-level=debug"]

推荐答案

在你的main/views.py人中,试着更换:

"path_to_report":f"/app/{path_to_report}"

具有以下功能:

"path_to_report":path_to_report

Django相关问答推荐

自定义公钥打破Django管理内联逻辑

未显示SWAGER上的一些示例架构

POST_SAVE接缝有错误

Django REST Framework 图片上传

在生产中使用 Django 中的 SQLite?

Django 管理命令参数

django.request 记录器没有传播到根目录?

模型中的外键

django- nginx: [emerg] open() "/etc/nginx/proxy_params" 在 /etc/nginx/sites-enabled/myproject:11 中失败(2:没有这样的文件或目录)

在 django 模板中遇到 user.is_authenticated 问题

django中的脏字段

使用 Django 1.5 实现多种用户类型

Django 国际化语言代码

django Datefield 到 Unix 时间戳

如何在 django 元素中开始做 TDD?

在 Django 中使用 Cython,是否有意义?

如何找到两个 Django 查询集的交集?

使用 request.user 的 Django 和中间件始终是匿名的

Django - TypeError - save() 得到了一个意外的关键字参数force_insert

如何从 django 请求中获取完整的 url