首页 > 解决方案 > 如何修复错误“'ManyRelatedManager' 对象没有属性 'field_name'”

问题描述

我正在尝试从具有多域关系的模型中提取一些student_IDstudent_name 。不幸的是,我不知道该怎么做。我尝试的方法导致了我得到的属性错误。

模型.py

class add_courses(models.Model):
    Course_Name = models.CharField(max_length=200, blank=True)
    Manager_Name = models.ForeignKey(Manager_login_information, on_delete=models.CASCADE, blank=True)
    description = models.TextField(default='', blank=True)
    syllabus = models.TextField(default='', blank=True)
    classroom = models.CharField(choices=choices, default='in person', max_length=12, blank=True)
    course_code = models.CharField(max_length=14, default='', blank=True)
    student = models.ManyToManyField(add_students_by_manager, blank=True)

    def __str__(self):
        return self.Course_Name

class add_students_by_manager(models.Model):
    manager_ID = models.ForeignKey(Manager_login_information, on_delete=models.CASCADE)
    student_ID = models.CharField(max_length=200)
    student_name = models.CharField(max_length=200)
    phone_number = models.CharField(max_length=200)
    address = models.CharField(max_length=200)
    dob = models.CharField(max_length=200)
    major = models.CharField(max_length=200)
    password = models.CharField(max_length=200)

    def __str__(self):
        return self.student_name

    @staticmethod
    def matching_loging_stu(userID):
        try:
            return add_students_by_manager.objects.get(student_ID=userID)
        except:
            return False

视图.py

def assignment_page(request):
    if request.method == "POST":
        get_course_name = request.POST.get('get_course_name')
        add_courses_get = add_courses.objects.get(Course_Name=get_course_name)
        stu_course_all_stu = add_courses.objects.filter(Course_Name=add_courses_get)
        print(stu_course_all_stu)

        for m in stu_course_all_stu:
            print(m.student.student_ID)
            print(m.student.student_name)

        context = {"stu_course_all_stu":stu_course_all_stu, "get_course_name":get_course_name}
        return render(request, 'assignment_page.html', context3)

标签: djangodjango-modelsdjango-viewsdjango-templates

解决方案


推荐阅读