Django - 自定义过滤器检查文件是否存在

2023-11-27

我制作了这个自定义过滤器来检查图像是否存在:

from django import template
from django.core.files.storage import default_storage

register = template.Library()

@register.filter(name='file_exists')
def file_exists(filepath):
    if default_storage.exists(filepath):
        return filepath
    else:
        index = filepath.rfind('/')
        new_filepath = filepath[:index] + '/image.png'
        return new_filepath

我在模板中使用了它,如下所示:

<img src="{{ STATIC_URL }}images/{{ book.imageurl }}|file_exists" alt="{{book.title}} Cover Photo">

但这不起作用。我不知道为什么。


您没有应用过滤器,因为|file_exists是在外面{{}}。尝试这个:

<img src="{{ STATIC_URL }}images/{{ book.imageurl|file_exists }}" alt="{{book.title}} Cover Photo">

或者,如果您想申请file_exists对于整个图像网址,请尝试以下操作:

<img src="{{ STATIC_URL|add:'images/'|add:book.imageurl|file_exists }}" alt="{{book.title}} Cover Photo">
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django - 自定义过滤器检查文件是否存在 的相关文章

  • 如何在旧数据库中的 Django 中进行 INNER JOIN ?

    抱歉 我的问题可能很简单 但我是 Django 的新手 真的很困惑 我有一个丑陋的旧表 我无法更改 它有 2 个表 class Salespersons models Model id models IntegerField unique
  • 所有 disqus 评论都显示在所有博客页面上

    我构建了一个博客类型的应用程序 在 Django 中 我正在尝试使用 DISQUS 来集成评论montylounge 的 django disqus http github com montylounge django disqus 但所有
  • 为 HTML5 Django Web 应用程序实现实时通知系统

    我目前正在开发一个由 Django apache 提供服务的 HTML5 Web 应用程序 该应用程序的目标是监视多个设备 所有客户端逻辑都是用 Angular 编写的 所有数据都来自对后端进行的基于 JSON 的类似 REST 的调用 我
  • Django的注释框架和CSRF

    据我了解 Django的评论框架 https docs djangoproject com en 1 4 ref contrib comments 专为匿名公众评论而设计 就像您通常在博客或文章下面看到的那样 换句话说 任何人都可以发表评论
  • 使用 Google App Engine 和 Django 将第三方库 (twilio) 添加到项目中

    每个人 我是这个领域的新手 我使用 django 框架使用 google 应用引擎开发 Web 应用程序 我有一个关于 python lib dir 问题的故障排除 导入错误 没有名为 的模块 我的 appengine config py
  • Django 中的行级权限

    有没有办法在 django 中进行行级权限 我以为没有 但只是在文档中注意到了这一点 权限不仅可以按对象类型设置 还可以按对象设置 具体的对象实例 通过使用 has add permission 提供了 has change permiss
  • Django 迁移 RunPython 无法调用模型方法

    我正在使用以下命令创建数据迁移RunPython方法 但是 当我尝试在对象上运行方法时 没有定义任何方法 是否可以使用调用模型上定义的方法RunPython 模型方法在迁移中不可用 包括数据迁移 然而 有一个解决方法 它应该与调用模型方法非
  • Django GraphQL JWT:tokenAuth 突变返回“str 对象没有属性解码”

    目前 我正在文档页面中运行 django graphqljwt 的基本示例 https django graphql jwt domake io en latest quickstart html https django graphql
  • 在 django 中为现有数据库表创建模型

    我的数据库中有一个旧表 我想在 Django 应用程序中创建一个模型 创建模型后 我使用 migrate 命令 然后它创建了一个具有自己名称的新表 Django 提供了一个实用程序 可以通过检查数据库命令从现有数据库自动生成模型 您可以通过
  • SearchQuerySet 的哪个属性与 prefetch_lated 具有相同的功能?

    def get books by query params context query query parameters binding query query parameters binding query query paramete
  • 如何在 django 模板中将名称反转为绝对 url?

    url url name 给出一个相对名称 我怎样才能做类似的事情 absolute url url name 这样它就会返回带基数的 url 包括端口 如果存在 有不同的解决方案 编写您自己的模板标签并使用 HttpRequest bui
  • 在 Docker 容器中看不到 Django

    我想在一个简单的 Docker 容器中运行 Django 首先 我使用 Docker 文件构建了容器 里面没有什么特别的 只有 FROM RUN 和 COPY 命令 然后我用命令运行我的容器 docker run tid p 8000 80
  • 在 MacOSX10.6 上运行 python 服务器时 MySQLdb 错误

    运行我的服务器 python manage py runserver 产生以下错误 django core exceptions ImproperlyConfigured 加载 MySQLdb 模块时出错 没有名为 MySQLdb 的模块
  • 使用 Django REST 框架进行 SAML SSO 身份验证

    我目前正在开发 AngularJS 前端和 Django REST 后端 我一直在使用Django rest auth https github com Tivix django rest auth过去需要对两者之间的连接进行身份验证 但现
  • Django 在 TabularInline 视图中禁用编辑(但允许添加)

    我想禁用编辑特定 TabularInline 实例中的所有对象 同时仍然允许添加并仍然允许编辑父模型 我有这个简单的设置 class SuperviseeAdmin admin TabularInline model Supervisee
  • 如何在 Django 中使用并发进程记录到单个文件而不使用独占锁

    给定一个在多个服务器上同时执行的 Django 应用程序 该应用程序如何记录到单个共享日志文件 在网络共享中 而不保持该文件以独占模式永久打开 当您想要利用日志流时 这种情况适用于 Windows Azure 网站上托管的 Django 应
  • Django 代理模型的继承和多态性

    我正在开发一个我没有启动的 Django 项目 我面临着一个问题遗产 我有一个大模型 在示例中简化 称为MyModel这应该代表不同种类的物品 的所有实例对象MyModel应该具有相同的字段 但方法的行为根据项目类型的不同而有很大差异 到目
  • Django 管理员在模型编辑时间歇性返回 404

    我们使用 Django Admin 来维护导出到我们的一些站点的一些数据 有时 当单击标准更改列表视图来获取模型编辑表单而不是路由到正确的页面时 我们会得到 Django 404 页面 模板 它是偶尔发生的 我们可以通过重新加载三次来重现它
  • django.db.utils.ProgrammingError:关系“django_content_type”不存在

    我有一个项目 我在我的电脑上慢慢建立起来 并且运行良好 我只是想将它放到服务器上 但收到此错误 django db utils ProgrammingError 关系 django content type 确实 不存在 我无法解决这个问题
  • 发送用户注册密码,django-allauth

    我在 django 应用程序上使用 django alluth 进行身份验证 注册 我需要创建一个自定义注册表单 其中只有一个字段 电子邮件 密码将在服务器上生成 这是我创建的表格 from django import forms from

随机推荐

  • 如果我不知道直到偏移量,我可以从 kafka 主题创建 RDD 吗?

    KafkaUtils createRDD将 offsetRanges 作为参数 我不知道我想读取的主题的直到偏移量 我最多想阅读该主题中的前 30 条消息 我看到有一个KafkaCluster html getLatestLeaderOff
  • 如何在 x86 平台上使用 gcc 声明内存范围不可缓存?

    虽然我已经阅读了有关此的 movntdqa 指令 但已经找到了一种干净的方法来表示不可缓存的内存范围或读取数据 以免污染缓存 我想从海湾合作委员会做到这一点 我的主要目标是交换到大型数组中的随机位置 由于数据恢复很少 希望通过避免缓存来加速
  • 如何在传递给 DataTable Select() 的字符串中包含撇号?

    The dt Select string 给出错误missing operand when apostrophe符号在字符串中 有什么方法可以解决这个错误 或者如何处理这个错误 String value Rubens Home value
  • 参考 ASP.NET Core MVC Web 应用程序 (RC2) 的完整框架库项目?

    我目前正在使用 ASP NET Core MVC RC2 它应该支持从 Core MVC Web 应用程序项目引用完整的框架库项目 但我似乎无法让它发挥作用 我有一个现有的完整框架库项目 我想将其与新的 Core MVC Web 应用程序项
  • Grails 日期验证的最小约束

    我是 grails 和 groovy 的新手 我有一个带有开始和结束日期的项目域类 我想添加一个约束 指定结束日期需要大于开始日期 然后项目的另一个子对象需要使其开始日期和结束日期与父项目的日期进行验证 这是否可以通过 min 约束实现 或
  • 我的 lambda 参数真的会影响我的本地参数吗?

    我正在处理一些 C 代码 它获取一些数据 并将其转发到传入的函数 void foo int data void fun int fun data 以下内容在没有警告的情况下工作 void bar int data int main int
  • 有没有办法用history.js 来判断状态的走向?

    正如标题所说 我希望能够表演出不一样的作品onstatechange事件如果pushState函数被调用 而不是back功能 或者 如果go函数为负函数或正函数 Example if History pushState or History
  • 如何更改Servlet 3.0 Spring MVC分段上传表单的字符编码?

    我有一个非常简单的 JSP Servlet 3 0 Spring MVC 3 1 应用程序 在我的其中一个页面上 我有多种表格 其中一种表单允许用户上传文件 因此配置为enctype multipart form data 我在 web x
  • 罗盘校准objective-c

    我尝试在我的 ios 应用程序中使用指南针 我有一个问题 如果我实施locationManagerShouldDisplayHeadingCalibration方法和return YES 然后校准显示一直显示 但我应该让它像苹果地图一样 I
  • 注释中的通用类型

    考虑以下代码 import java lang annotation Retention import java lang annotation RetentionPolicy public class AnnotationTest Gen
  • Azure 应用程序网关的自定义域

    我正在尝试使用自定义域名创建应用程序网关 但不断收到错误消息 无法指定域名标签 我想知道我是否做错了什么或者天蓝色应用程序网关不可能拥有自定义域名 以下是我在天蓝色应用程序网关方面学到的经验教训 1 Application gateway
  • Firebase Android 离线性能

    当单个节点下存储大约 5000 个子节点时 在使用离线功能时初始化 firebase 会变得非常慢 执行第一个查询大约需要 30 秒 初始化后 执行后续查询 例如列出前 25 个子节点 只需不到一秒的时间 我正在利用以下属性来启用离线功能
  • Grails 中的多个文件上传

    我正在努力整合优秀的来自 blueimp 的 jquery 文件上传进入 Grails 2 0 并为此编写一个新插件 我知道有已经是插件了 但它不使用资源 并且已经9个月没有更新了 jquery file upload在那段时间发生了很大的
  • 收集器的组合器功能可以用于顺序流吗?

    示例程序 public final class CollectorTest private CollectorTest private static
  • 如何用符号表示用户通过电子邮件发送给我的 Mac OS X 应用程序崩溃报告?

    我正在开发一个应用程序 我已将其发送给一些测试人员 在启动应用程序的短短几分钟内 用户就遇到了崩溃 当弹出窗口说应用程序崩溃时 他复制了详细信息部分中的所有文本并将其通过电子邮件发送给我 我已将文本保存到纯文本文件中 并为其指定了 cras
  • OOP 中的工厂是什么

    我对 工厂相关 设计模式及其 OOP 实现的理解一直非常简单 A 工厂方法 是类内部的方法 该方法具有接口 或抽象类 作为返回类型 并基于某些内部逻辑构造实现该接口的对象 A 工厂 是一个只包含工厂方法的类 An 抽象工厂 是一个仅包含工厂
  • 在 Javascript 中激活链接

    我在使用 Javascript 时遇到一些问题 事实上 我只是该脚本语言的新手 所以我需要一些帮助 问 如何激活此链接 a href box1 something a 该链接只是指向位于index html 文件中的div 的链接 因此没有
  • 使用 2 个索引验证 Codeigniter 中的 UNIQUE 字段

    在 Codeigniter 框架中 我可以使用 表单验证类 验证 MYSQL 数据库中的唯一字段 示例 this gt form validation gt set rules form field form label is unique
  • Hibernate buildSessionFactory() 异常

    我的休眠有一个严重的问题 我遵循了各种书籍和在线教程 但我得到了同样的异常 ExceptionInInitializerError 显然是由 HibernateUtil java 行抛出的 SessionFactory sf cfg con
  • Django - 自定义过滤器检查文件是否存在

    我制作了这个自定义过滤器来检查图像是否存在 from django import template from django core files storage import default storage register templat