如何使用pythons os-django-python获取文件相对路径
我正在获取目录如何使用pythons os-django-python获取文件相对路径,python,django,Python,Django,我正在获取目录dir下的所有文件名: files = os.listdir(dir) 将文件名呈现到模板后,我将在模板中显示它们,如下所示: {% for each in files %} <li> <a href="{{each}}" target="_blank">{{each}}</a> <li> {% endfor %} {%用于文件%中的每个文件] {%endfor%} 我想,如果我点击文件名,该文件应在新窗口中打开。但是这
dir
下的所有文件名:
files = os.listdir(dir)
将文件名呈现到模板后,我将在模板中显示它们,如下所示:
{% for each in files %}
<li>
<a href="{{each}}" target="_blank">{{each}}</a>
<li>
{% endfor %}
{%用于文件%中的每个文件]
{%endfor%}
我想,如果我点击文件名,该文件应在新窗口中打开。但是这里的问题是
files=os.listdir(dir)
只返回文件名,而不返回其相对路径。我如何获得路径呢 添加一个“/”命令浏览器从站点的根目录开始。此外,在新窗口中打开链接应为HTML:
<a href="/{{each}}" target="_blank">{{each}}</a>
谢谢,但是{{each}}是文件名,我需要获取这些文件的路径,知道吗?@doniyor我在responseThanks中添加了这个,但是这给出了绝对路径,绝对路径在chrome中给出了一些错误等等。。。如何获取相对路径以便打开它?@doniyor relative to start_dir应该是os.path.relpath(os.path.join(dir,f),start=start_dir)谢谢!非常好的帮助:)你能在另一个变量中发送模板的路径吗<你在找os.getcwd()?@jcfollower,如何获取路径是我现在的问题。我可以用
C://…
获得绝对路径,但我需要相对路径。如果你有绝对路径,你就不能用它的最后一部分作为相对路径吗?@jcfollower,绝对!:D完全正确。
files = [os.path.join(dir, f) for f in files]