我正在尝试制作一个个人资料页面,该页面只是一个包含用户详细信息的页面,例如名字,姓氏,电子邮件等。但我认为我的观点、我的 url.py 或我的设置有问题,这给了我一个错误 TemplateDoes不存在于 /用户/配置文件/ (users/profile.html)。不过,其他页面工作正常。
这是我的回溯:
文件“/Documents/morse _ log/m _ env/lib/python 3.7/site-packages/django/core/handlers/exception . py”,第34行,在inner response = get _ response(request)中
file "/Documents/morse _ log/m _ env/lib/python 3.7/site-packages/django/core/handlers/base . py ",第115行,in _ get _ response response = self . process _ exception _ by _ middleware(e,request)
*文件“/文档/morse_log/m_env/库/python3.7/站点包/django/核心/处理程序/基.py”,第 113 行,_get_response 响应 = wrapped_callback(请求,*callback_args,**callback_kwargs)*
文件“/文档/morse_log/用户/视图.py”,第 32 行,在配置文件返回呈现中(请求,'users/profile.html',参数)
文件“/Documents/morse _ log/m _ env/lib/python 3.7/site-packages/django/shortcut s . py”,第19行,在render content = loader . render _ to _ string(template _ name,context,request,using=using)中
文件“/文档/morse_log/m_env/库/python3.7/站点包/django/模板/加载程序.py”,第 61 行,render_to_string模板 = get_template(template_name,使用=使用)
文件“/Documents/morse _ log/m _ env/lib/python 3.7/site-packages/django/template/loader . py”,第19行,在get _ template raise template does notexist(template _ name,chain=chain)中
异常类型:TemplateDoesNotExist at /users/profile/异常值:用户/profile.html
settings.py:
INSTALLED_APPS = [
# My apps
'morse_logs',
'users',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
/users/urls.py:
from django.urls import path, include
from django.contrib.auth.models import User
from . import views
app_name = 'users'
urlpatterns = [
# Include default auth urls.
path('', include('django.contrib.auth.urls')),
# Registration
path(r'/register/', views.register, name='register'),
path(r'/profile/', views.profile, name='profile'),
]
/users/profile.html:
{% block content %}
<title>Profile</title>
<div class="container">
<p>
{{user}}
{{user.first_name}}
</p>
</div>
{% endblock %}
用户/views.py:
from django.shortcuts import render, redirect
from django.contrib.auth import login
from django.contrib.auth.forms import UserCreationForm
from users.forms import RegistrationForm
from django.contrib.auth import views as auth_views
from django.contrib.auth.models import User
# Create your views here.
def register(request):
"""Register a new user"""
if request.method != 'POST':
# Display blank registration form
form = RegistrationForm()
else:
# Process completed form
form = RegistrationForm(data=request.POST)
if form.is_valid():
new_user = form.save()
# Log the user in and then redirect to home page
login(request, new_user)
return redirect('morse_logs:index')
# Display a blank or invalid form.
context = {'form': form}
return render(request, 'registration/register.html', context)
def profile(request):
args = {'user': request.user}
return render(request, 'users/profile.html', args)
用户/model.py:(在我的文本编辑器中,它说“发送者”值未使用,未解析的属性引用UserProfile类的“对象”)
from django.db import models
from django import forms
from django.contrib.auth.models import User
from django.db.models.signals import post_save
# Create your models here.
class UserProfile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True)
description = models.CharField(max_length=100, default='')
def create_profile(sender, **kwargs):
if kwargs['created']:
user_profile = UserProfile.objects.create(user=kwargs['instance'])
post_save.connect(create_profile, sender=User)
forms.py:
from django import forms
from django.contrib.auth.models import User
from django.contrib.auth.forms import UserCreationForm
class RegistrationForm(UserCreationForm):
email = forms.EmailField(required=True)
class Meta:
model = User
fields = (
'username',
'first_name',
'last_name',
'email',
'password1',
'password2'
)
def save(self, commit=True):
user = super(RegistrationForm, self).save(commit=False)
user.first_name = self.cleaned_data['first_name']
user.last_name = self.cleaned_data['last_name']
user.email = self.cleaned_data['email']
if commit:
user.save()
return user
需要在模板列表中添加模板目录:
'DIRS': [os.path.join(BASE_DIR, 'templates')]
所以替换下面的模板列表。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
并按以下格式创建模板:
users
----|templates
----|users
-----|profile.html
我创建了新项目,但找不到出错的地方。 Django versiob - 3.1.5 蟒蛇 3.7.4 模板DoesNotExist位于/index。html请求方法:GET请求URL:http://127.0.0.1:8000/Django版本:3.1.5异常类型:TemplateDoesNotExist异常值: 索引。html异常位置:C:\Users\user\PycharmProjects\
我使用python 3.7.2和Django 2.1,每次我试图加载主网址我得到以下错误。 TemplateDoesnotexistat/ 代笔人/投稿人名单。html 请求方法:获取请求URL:http://localhost:8080/Django版本:2.1异常类型:TemplateDoesNotExist异常值: 代笔人/投稿人名单。html 异常位置:C:\Users\User。virt
我正在尝试调用restapi,但收到错误消息 org.thymeleaf.exceptions.TemplateInputException:错误解析模板[视图字段],模板可能不存在,或者可能无法由org.thymeleaf.engine.TemplateManager.resolve模板(TemplateManager.java:869)~[thymeleaf-3.0.12。RELEASE. j
我想插入多个实时模板。例如,每当我键入<code>prop</code>并按<code>tab</code>时,pycharm就会为python编写完整的属性。 我想导入以下列表:https://github.com/hoffmann/PyCharm-Python-Templates 但是我在< code >中找不到templates文件夹 我也在使用社区版2016.1.4。
我使用SpringBoot和mySql数据库。 我正在尝试筛选搜索通过一个表格的团队。最初,这个表是一个thymeleaf表(参见我的相关SO问题),但在用尽了互联网上所有可用的资源后,我决定以不同的方式实现搜索,但没有成功。 我发现了一个非常有用的网站,它有一个实用的,相关的例子,我想要实现什么。 解析模板“索引”时出错,模板可能不存在,或者任何已配置的模板解析程序都无法访问 Thymeleaf
我正在做一个新的Django项目,很难得到索引。html页面以正确显示。关于如何更改以使其正确显示,有什么建议吗? 我发现错误了 我对每个文件的设置如下。 我的项目名/我的项目名称/设置.py myprojectname/myprojectname/urls.py django.shortcuts导入render_to_response 我也是Django的新手,所以不要讨厌!:)我很乐意承认我是