django {%static %}页面显示行本身{%load static %},而不是加载所需的文件

6pp0gazn  于 2023-03-09  发布在  Go
关注(0)|答案(1)|浏览(450)

我想将一个css文件连接到这个html文件,我想通过{% load static %}添加它

{% load static %}
<!DOCTYPE html>
<html lang="ru">
<head>
    <title>Brewtopia Cafe form</title>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="{% static 'css/style_contact.css' %}">
</head>
<body>
<header>

这是urls.py应用程序中的www.example.com

from django.urls import path
from . import views
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    path('', views.Brewtopia_view, name='brewtopia'),
    path('Contact/', views.Contact_view, name='contact')
]

if settings.DEBUG:
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

这些是views.py应用程序中的www.example.com

from django.shortcuts import render

def Brewtopia_view(request):
    return render(request, 'Brewtopia.html')

def Contact_view(request):
    return render(request, 'Contact.html')

settings.py 中的www.example.com设置

STATIC_URL = '/static/'

STATICFILES_DIRS = [
    BASE_DIR / "static",
]

css文件位于文件夹C:\Projects\brew\brewtopia\用户\static\用户\css中
我添加了static,并希望上传一个css文件,但错误出现在x1c 0d1x屏幕截图中
但即使您删除{% load static %},它也不会起作用

dy2hfwbg

dy2hfwbg1#

在www.example.com中views.py,需要导入模板渲染器:

from django.template import loader
from django.http import HttpResponse

然后,在每个视图函数中,返回如下内容:

def view_name(request) -> HttpResponse:
    template = loader.get_template('module_name/Brewtopia.html')
    context = {} # variables you use in your template go here- read the reference at the end for more info

    return HttpResponse(template.render(context, request))

不要忘记用“module_name”替换应用程序的名称。
这是一个使用模板的非常好的例子:https://docs.djangoproject.com/en/4.1/intro/tutorial03
下面是一些更深入的信息:https://docs.djangoproject.com/en/4.1/topics/templates/

相关问题