python-3.x - 在 django views.py 中获取 NameError,因为 NameError : name 'edit_load_table' is not defined
问题描述
name 'edit_load_table' is not defined
Request Method: GET
Request URL: http://127.0.0.1:8000/edit_load/N193
Django Version: 3.1.4
Exception Type: NameError
Exception Value:
name 'edit_load_table' is not defined
Exception Location: C:\Users\Virti Parekh\projects\try\total_load\views.py, line 45, in edit_load
Python Executable: C:\Users\Virti Parekh\AppData\Local\Programs\Python\Python37\python.exe
Python Version: 3.7.6
Python Path:
['C:\\Users\\Virti Parekh\\projects\\try',
'C:\\Users\\Virti '
'Parekh\\AppData\\Local\\Programs\\Python\\Python37\\python37.zip',
'C:\\Users\\Virti Parekh\\AppData\\Local\\Programs\\Python\\Python37\\DLLs',
'C:\\Users\\Virti Parekh\\AppData\\Local\\Programs\\Python\\Python37\\lib',
'C:\\Users\\Virti Parekh\\AppData\\Local\\Programs\\Python\\Python37',
'C:\\Users\\Virti '
'Parekh\\AppData\\Local\\Programs\\Python\\Python37\\lib\\site-packages']
Server time: Sat, 05 Dec 2020 19:04:19 +0000
我想从表“edit_load_table”中获取特定的 empId 数据。当我单击加载详细信息(作为锚标记)时,它将以表格格式获取特定 empId 数据的数据。
这是我的 models.py 代码
class facultyload(models.Model):
empId = models.CharField(max_length=20)
name = models.CharField(max_length=50)
total_load = models.IntegerField()
def __str__(self):
return self.empId
class edit_load_table(models.Model):
empId = models.CharField(max_length=20)
name = models.CharField(max_length=50)
subject_abv = models.CharField(max_length=10)
subject_load = models.IntegerField()
subject_type = models.CharField(max_length=10)
id_key = models.IntegerField()
semester = models.CharField(max_length=20)
def __str__(self):
return self.empId
这是我的views.py 代码
def edit_load(request, empId):
editload = edit_load_table.objects.get(str=empId)
return render(request,"edit_load.html",{'editload':editload})
由于我的 empId 包含字母和数字,所以我给了 str=empId。在我的 urls.py 中,我通过了
path('edit_load/<str:empId>',views.edit_load)
任何人都可以帮助我解决这个错误,因为我是 Django 和 python 的新手。谢谢你!
edit_load.html
<!DOCTYPE html>
<html>
<head>
<title>Faculty's Subject wise Load</title>
{% load static %}
<link rel="stylesheet" href="{% static 'styles/style-main.css' %}"/>
<link rel="stylesheet" href="{% static 'styles/css/bootstrap.min.css' %}"/>
</head>
<body>
<div class="center-div">
{% csrf_token %}
<br>
<br>
<h1>Faculty List with their load</h1>
<div class="table-responsive">
<table>
<thead>
<tr>
<th>Sr No.</th>
<th>Subject Name</th>
<th>Subject Load</th>
<th>Subject Type</th>
<th>Semester</th>
<th colspan="2">operation</th>
</tr>
</thead>
<tbody>
{% for faculty_load in edit_load %}
<tr>
<td>{{faculty_load.id_key}}</td>
<td>{{faculty_load.subject_abv}}</td>
<td>{{faculty_load.subject_load}}</td>
<td>{{faculty_load.subject_type}}</td>
<td>{{faculty_load.semester}}</td>
<td><a href="/facultysubjectDetails/{{faculty_load.id}}" ><span class="btn btn-success">Edit</span></a></td>
<td><a href="/deletedetails/{{faculty_load.id}}" ><span class="btn btn-danger">Delete</span></a></td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</body>
</html>
我调用edit_load.html文件的一段代码
<td><a href="/edit_load/{{loads.empId}}" data-toggle="tooltip" data-placement="top" title="load details" name="load details" method="GET">Load Details</a></td>
解决方案
我解决了上述错误也解决了我在评论中提到的错误。我更改了代码的某些部分。在views.py 中,我使用视图从一个ID 返回多个数据引用。
视图.py
def edit_load(request, empId):
parent = edit_load_table.objects.filter(empId=empId)
context = {'parent':parent}
return render(request,"edit_load.html",context)
在我之前的 HTML 文件中,我使用了这个 {% for Faculty_load in edit_load %} 这是错误的,在我得到我们必须传递我在上下文中提到的值之后它给了我一个错误。
{% for loads in parent %}
<tr>
<td>{{loads.subject_abv}}</td>
<td>{{loads.subject_load}}</td>
<td>{{loads.subject_type}}</td>
<td><a href="/editfacultydetails/{{loads.id}}" ><span class="btn btn-sm btn-info">Edit</span></a></td>
<td><a href="/deletefacultydetails/{{loads.id}}" ><span class="btn btn-sm btn-danger">Delete</span></a></td>
</tr>
{% endfor %}
我希望我的回答会有用。而且在评论中提到的建议对我很有用。谢谢你。
推荐阅读
- python - 是否可以从外部控制 Facebook 聊天机器人?
- powershell - FileSystemRights:检查它是否包含特定权限?
- python - Thonny 中未设置 TERM 环境变量
- python - Pytrend get_daily_data 列的含义
- python - 将 DataFrame 与多对多合并
- python - 将指定文本从 Doc 写入数据框
- python - 将字符串从网络抓取工具复制到 csv 文件中
- python - 如何将具有连续时间数字索引的 Pandas 数据帧中的数据重新采样、聚合值到离散整数时间?
- python - 根据列为 df 创建自定义存储桶
- javascript - 如何将数据保存在 JSON 文件中,以便每次我的 Discord Bot 注销时都不会重置数据