首页 > 解决方案 > Django:检查静态文件是否存在

问题描述

希望你做得很好。我有一个 django 视图,需要检查是否存在具有已知路径的静态文件。

我目前正在尝试使用os.path.isfile(),但我觉得这是错误的方法。

视图.py:

import os
def knighthood_ceremony(warrior):
    narration_path = static("polls/narrations/{}/{}.mp3".format(queen_name,warrior.name))
    is_to_play_narration = os.path.isfile(narration_path)

设置.py:

STATIC_URL = '/static/'

结构:

mysite
    mysite
        settings.py
    polls
        static
            polls
                narrations
                    5
                        1.mp3
        views.py
    otherproject

这给出了本地变量:

narration_path = '/static/polls/narrations/5/1.mp3'
is_to_play_narration = False

但是,有一个文件在:

C:\Users\{USER}\mysite\polls\static\polls\narrations\5\1.mp3

为什么 os.path.isfile 看不到?任何建议将不胜感激!

标签: pythondjango

解决方案


您是否尝试通过 URL 或 STATIC_ROOT 读取它?如果你是从硬盘读取。可能是那里的错误


推荐阅读