我具有以下结构
当我在管理视图中单击型号名称时,出现以下错误。这是什么意思?
AttributeError at /admin/app/tasksx/
'tasksx' object has no attribute 'text'
Request Method: GET
Admin.py
from django.contrib import admin
from .models import tasksx
admin.site.register(tasksx)
Views.py
def create_task(request):
if request.method == 'POST':
creator = request.user
job_title = 'data engineer'
skill_name = request.POST.get('skill_name')
starting = request.POST.get('starting')
description = request.POST.get('description')
target_date = request.POST.get('target_date')
i = tasksx.objects.create(creator=creator, job_title=job_title, skill_name=skill_name, starting=starting, current=starting, description=description, target_date=target_date)
messages.success(request, ('Skill created'))
return redirect('index')
models.py
class tasksx(models.Model):
job_title = models.CharField(max_length=400, default="data")
creator = models.CharField(max_length=400, default="none")
skill_name = models.CharField(max_length=400, default="none")
starting = models.CharField(max_length=400, default="none")
current = models.CharField(max_length=400, default="none")
description = models.CharField(max_length=4000000, default="none")
target_date = models.DateTimeField(default=datetime.now)
def __str__(self):
return self.text
答案 0 :(得分:1)
在您定义的tasksx
模型中:
def __str__(self):
return self.text
但是模型中没有文本属性。
答案 1 :(得分:1)
扩大我的评论以避免进一步讨论:
在您的<mat-card>
<mat-card-header>
<mat-icon mat-card-avatar>home</mat-icon>
...
mat-icon.mat-card-avatar {
width: 40px;
height: 40px;
font-size: 40px;
}
模型的tasksx
方法中,您试图在模型中任何地方都没有__str__
字段的情况下返回self.text
。
如果要显示标题,请修改方法的返回值。
text
现在,如果您想在管理界面中查看所有字段,则需要修改应用程序的def __str__(self):
return self.job_title
。
admin.py
admin.py