Django很新。我正在尝试将ForeignKey
字段student_information.project
切换回空值。同样,我的student_remove
对象似乎没有正确定义,因为'Remove'应该是一个对象。
错误代码
AttributeError at /project_list/projects/1/
type object 'Student_Information' has no attribute 'student_remove'
Request Method: GET
Request URL: http://127.0.0.1:8000/project_list/projects/1/?Remove=sathya
Django Version: 1.10.5
Exception Type: AttributeError
Exception Value:
type object 'Student_Information' has no attribute 'student_remove'
Exception Location: /media/rms/Sathya's Dr/mysite/projects/views.py in post_detail, line 27
Python Executable: /usr/bin/python
Python Version: 2.7.12
我的views.py
def post_detail(request, pk):
post = get_object_or_404(Project, pk=pk)
students = Student_Information.objects.filter(project=post)
if request.GET.get('Remove'):
Remove = request.GET.get('Remove')
obj = Student_Information.objects.get(RCSID=Remove)
#obj.project = None
return render(request, 'projects/post_detail.html', {'post': post, 'students': students})
obj = Student_Information.objects.get(RCSID=Remove)
投掷一个,应该指定RCSID是一个外键,看起来它正试图找到'sathya'的主键,它应该只是得到一个字符串。如何使其与字符串匹配?好像RCSID是自动RCSID_id。
invalid literal for int() with base 10: 'sathya'
答案 0 :(得分:1)
错误信息非常清楚。 Student_Information
模型没有任何名为student_remove
的字段。
除此之外,你的代码还有很多问题。
Student_Information.student_remove.project = "---------"
需要修复。student_information.project
即可将student_information.project = None
设置为null。但此处student_information
是Student_Information
模型的实例。filter
返回Queryset
,而非实例。save
以在数据库中更新它。 我建议你通过官方polls app tutorial。
答案 1 :(得分:0)
我通过传递id而不是RCSID使它们匹配。轻松修复。