列出Django中的所有静态资产

8hhllhi2  于 2023-01-27  发布在  Go
关注(0)|答案(1)|浏览(105)

有没有方法可以列出视图中的所有静态资产?一种方法是使用绝对路径,但Django有没有这样做的方法?另一种方法我尝试使用request.build_absolute_uri(),但os.listdir()无法打开它,因为它是一个URL。
有什么建议吗?
我通过S3提供文件。

gcmastyq

gcmastyq1#

您可以使用设置中的STATICFILES_DIRS:

from django.conf import settings

for folder in settings.STATICFILES_DIRS:
    # do whatever you want here

但是只有在使用runserver的情况下才能这样做。如果使用collectstatic和Web服务器来传递静态文件,则应该使用:

from django.conf import settings

for root, dirs, files in os.walk(settings.STATIC_ROOT):
    # do whatever you want here

相关问题