我是Python和Django的初学者,我一直在努力解决以下问题:
在localhost:8000 / webiste很漂亮,工作正常但在localhost:8000 / invoice / SOME引用不起作用。例如,CSS不起作用,但图像和JavaScript可以。
我使用相对链接来指出我的路径。
<script src="{% static "js/jquery.min.js" %}"></script>
<script src="{% static "js/skel.min.js" %}"></script>
<script src="{% static "js/skel-layers.min.js" %}"></script>
<script src="{% static "js/init.js" %}"></script>
<noscript>
<link rel="stylesheet" href="{% static "css/skel.css" %}"/>
<link rel="stylesheet" href="{% static "css/style.css" %}"/>
<link rel="stylesheet" href="{% static "css/style-xlarge.css" %}"/>
</noscript>
<img src="{% static "images/pic07.jpg" %}" alt="" />
Settings.py
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static/"),
)
View.py
def home(request):
return render(request, 'principal.html',)
def invoice(request):
return render(request, 'invoice.html',)
当我使用浏览器检查页面代码时,我看到链接被称为http://localhost:8000/invoice/static/css/somecss.css。
invoice.html位于/ project / folder / templates /中,我的.css位于/ project / static / css /中。 invoice.html位于我的index.html(principal.html)页面的同一文件夹中,该页面正在运行。
此外,网站/发票/页面内的所有链接都成为网站/发票/链接,而不是网站/链接
答案 0 :(得分:0)
问题已解决,删除了代码。另外由于js文件引用其他css文件导致控制台上出现404错误,我在模板中添加了一个变量来包含url:
<script>
var url = "{% static 'css/' %}";
</script>
在.js里面我使用了url.concat(&#39; style.css&#39;)