python - 如何在没有静态的情况下在 Django 模板中显示图像?
问题描述
我有一个 API,它为我提供了电影列表,并且图像位于HTTP链接中,例如:
所以在django中我们使用静态文件{% static 'image.jpg' %}
在模板中显示图片,但是如何在模板中显示api图片链接呢?
解决方案
{% static 'image.jpg' %}
不会神奇地使图像出现在网站上,django 会根据给定的内容呈现模板。静态意味着查看静态文件夹,将给定参数作为文件搜索,并获取给定静态资产的 url。
在您的特定情况下,您说您获得了图像的网址。您可以轻松地将这些 url 添加到上下文中,这将成为渲染过程的一部分。
对于函数视图,它大致如下所示。
def view(request, *a, **kw):
template = loader.get_template('my_template.html')
context = {'my_image': get_image_from_api()}
return HttpResponse(template.render(context, request))
对于基于类的视图,它大致如下所示。
class MyView(TemplateView):
template_name = 'my_template.html'
def get_extra_context(self):
_super_context = super().get_extra_context()
context = {'my_image': get_image_from_api()}
return {**_super_context, **context}
对于这两种观点,大致相同;您现在可以{{my_image}}
在模板内部使用来引用 url。希望能帮助到你!
推荐阅读
- git - 为什么内容为 123 的文件的 shasum 没有 mach blob 哈希?
- javascript - 如何在 Node.JS 中使用 MongoDB 批量插入插入一个大数组?
- c# - 通过工作人员发布到 .net 核心中的 API 发送多个 appsettings.json 值的简单方法?
- python - 如何访问 DataFrame 列中的元素
- swiftui - SwiftUI - 监听位置权限的授权状态
- c# - C# 如何使用 GetMethod 查找具有通用输出参数的特定重载?
- c++ - 在 C++ 中从类外部修改类的成员
- python - Pandas 按月和年分组(日期为 datetime64[ns])并按计数汇总
- c++ - 子线程中的条件变量等待在主线程中停止执行
- methods - 打开购物车。西班牙的信用卡支付平台