Django模型中的多对多数组字段

many to many array field in django model

我正在 Django 中构建工单模型。我想要一个数组字段用于需要数量的零件,另一个数组字段用于按数量生产的零件。这些部分将是我已经创建的库存应用程序中模型的外键。从我读过的内容来看,PostgreSQL 不允许在数组字段中使用外键。所以我需要在一个新模型中有一个多对多的领域。但我不确定如何构建它。解决此问题的最佳方法是什么?

models.py

from django.db import models
from django.contrib.postgres.fields import ArrayField
from inventory.parts.models import partslist

# Create your models here.
class jobs(models.Model):
    jobid = models.CharField(max_length=100)
    partsrequired = ArrayField(
        ArrayField(
            models.ForeignKey(partslist, on_delete=models.CASCADE)
        )
    )
    partsproduced = ArrayField(
        ArrayField(
            models.ForeignKey(partslist, on_delete=models.CASCADE)
        )

class instruction(models.Model):
    job = models.ForeignKey(jobs)
    pdf = models.FileField(upload_to='pdf')

ManyToManyField [Django-doc]:

class Job(models.Model):
    jobid = models.CharField(max_length=100)
    partsrequired = <b>models.ManyToManyField(</b>partslist, related_name='required_for_jobs'<b>)</b>
    partsproduced = <b>models.ManyToManyField(</b>partslist, related_name='produced_for_jobs'<b>)</b>