我正在开发一个django tastypie web应用程序。
我有两个Django模型:

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

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

从中,我得到了两个不同文件中的两个tastype资源。
但我的问题来了。我希望能够从课程中筛选学生,并从学生中筛选课程:
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")

关于python - 如何处理美味的圆形进口,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19838939/

10-09 07:09