如何处理tastypie中的循环导入
作者:互联网
我正在开发一个django-tastypie网络应用程序.
我有两个django型号:
class Student(models.Model):
name = models.CharField()
class Course(models.Model):
name = models.CharField()
student = models.ForeignKey(Student)
从那以后,我在两个不同的文件中有两个Tastypie资源.
但这是我的问题.我希望能够从课程中过滤学生,从学生那里过滤课程:
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,django,tastypie,circular-dependency 来源: https://codeday.me/bug/20190825/1718576.html