【问题标题】:How to get a FileField URL witout creating template如何在不创建模板的情况下获取 FileField URL
【发布时间】:2020-09-09 21:12:18
【问题描述】:

单击链接时,我想从我的 django 站点下载文件。 如果我将文件 url 添加到链接,它会下载它,但我手动执行,我想使用链接执行它。 如何制作,无需创建模板即可使用。

<a href="{% url 'material' pk=material.pk %}"> {{ material.title }}</a>
def material(request, pk):
   material_by_pk = get_object_or_404(Material, pk=pk)
   return material_by_pk.data.url


class Material(models.Model):
    title = models.CharField(max_length=40)
    data = models.FileField(upload_to=material_url)

所有内容都存储在媒体目录中。

【问题讨论】:

  • 你试过material_by_pk.url吗?
  • 是的,它不起作用,因为视图函数创建了一个模板

标签: django filefield


【解决方案1】:
<a href="{{material.data.url}}"> {{ material.title }}</a>

它有效:)

【讨论】:

    猜你喜欢
    • 2020-12-13
    • 2020-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-03
    • 2018-12-11
    相关资源
    最近更新 更多