我希望能够创建一个模型TestCase
,该模型具有products
字段,该字段是antoher模型Product
的ForeignKey。我希望能够使用管理员页面创建新的Product
,然后在创建TestCase
时,我希望能够从我已经创建的Product
中进行选择。 Dropbox是理想的选择。这就是我的尝试:
models.py
class TestCase(TestBase):
def __str__(self):
return self.title
class Product(models.Model):
products = models.ForeignKey(TestCase, on_delete=models.CASCADE, null=True)
name = models.CharField(max_length=200, default='')
def __str__(self):
return self.name
admin.py
class ProductInline(admin.TabularInline):
model = Product
class TestCaseAdmin(admin.ModelAdmin):
inlines = [ProductInline]
admin.site.register(TestCase, TestCaseAdmin)
在管理页面上添加新的TestCase
现在有用于创建产品的字段,但我想从已创建的Products
中进行选择?
提前致谢。
答案 0 :(得分:2)
您的模型结构错误。如果您希望能够从TestCase中已有产品的列表中进行选择,并且产品可以属于多个TestCase,则需要一个存在于TestCase上的ManyToManyField。