문제

현재 Django-Tastypie 웹 앱을 개발하고 있습니다. 나는 두 가지 django 모델입니다.

class Student(models.Model):
  name = models.CharField()

class Course(models.Model):
  name = models.CharField()
  student = models.ForeignKey(Student)

그리고 그로부터, 나는 두 개의 다른 파일로 두 개의 시음 자원을 가지고 있습니다. 그러나 여기 내 문제가 온다. 나는 과정에서 학생을 필터링하고 학생의 과정을 필터링 할 수 있기를 원합니다.

from website.api.course import CourseResource

class StudentResource(ModelResource):
  course = fields.ForeignKey(CourseResource, "course")

  class Meta:
    queryset = Student.objects.all()
    resource_name = "student"
    filtering = { "course" : ALL }

그리고

from website.api.student import StudentResource

class CourseResource(ModelResource):
  student = fields.ForeignKey(StudentResource, "student")

  class Meta:
    queryset = Course.objects.all()
    resource_name = "course"
    filtering = { "student" : ALL }

그러나 물론, 나는 순환 수입 문제를 얻었습니다. 어떻게 해결할 수 있습니까?

감사 !

도움이 되었습니까?

해결책

각 모듈에서 다른 리소스를 가져올 필요가 없습니다. 대신 문자열을 인수로 사용해보십시오.

class StudentResource(ModelResource):
    course = fields.ForeignKey('website.api.course.CourseResource', "course")

class CourseResource(ModelResource):
    student = fields.ForeignKey('website.api.student.StudentResource', "student")
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top