我想在一个文件夹中添加特定资产,并且应该能够使用/assets/css/main.css这样的URL访问。我可以使用/static/css/main.css而不是/ assets / css / main来执行此操作。 CSS
我还需要做些什么更改才能让django接受/ assets / path。
默认 -
STATIC_ROOT = 'app/static'
STATIC_URL = '/static/'
用于访问静态和资产文件夹 -
STATIC_ROOT = 'app/static'
STATIC_URL = '/static/'
ASSET_ROOT = 'app/assets'
ASSET_URL = '/assets/'
我也尝试过这个 -
STATIC_ROOT = 'app/static'
STATIC_URL = '/static/'
ASSET_ROOT = os.path.join(BASE_DIR, 'app/assets')
ASSET_URL = '/assets/'
如果最后所有文件都在'app'文件夹中,根据我的理解你的ROOT将是'app'文件夹,你可以创建其他变量并从.setting import X导入...
为什么没有一个静态文件夹用于所有静态文件?如果您正在使用多个应用程序,那么您需要做的就是在主静态文件夹中创建目录。
现在查看问题的详细信息,我建议您在主静态文件中创建两个子目录。像这样的东西:
static/
main/
css/
main.css
assets/
css/
main.css
然后在settings.py文件中执行以下操作:
STATIC_ROOT = os.path.join(BASE_DIR, 'app/static')
STATIC_URL = '/static/'
现在要访问模板中的静态文件,您可以执行以下操作:
{% load static %}
<link href="{% static "assets/css/main.css" %}" rel="stylesheet">
<link href="{% static "main/css/main.css" %}" rel="stylesheet">