Python Django中模型之间的链接

Python Django中模型之间的链接,python,django,database,django-models,django-forms,Python,Django,Database,Django Models,Django Forms,我是Django的新手。我想知道如何连接外键的数据。这是代码 class CreateSchool(models.Model): schoolName = models.CharField(primary_key=True, max_length=250) class SchoolDetails(models.Model): createSchool = models.OneToOneField(CreateSchool,to_field='sch

我是Django的新手。我想知道如何连接外键的数据。这是代码

 class CreateSchool(models.Model):

        schoolName = models.CharField(primary_key=True, max_length=250)

    class SchoolDetails(models.Model):

        createSchool = models.OneToOneField(CreateSchool,to_field='schoolName')

        principalName = models.CharField(max_length=250)

        schoolAddress = models.CharField(max_length=500)

    class kidDetails(models.Model):

        schoolUID = models.ForeignKey(SchoolDetails,to_field='schoolUID')

        childName= models.CharField(max_length=245)

        childUID = models.CharField(max_length=245)   
我的问题是,当我输入孩子的详细信息时,如何存储关于schoolDetails的孩子数据,并从UI创建学校模型

当我从管理面板中执行此操作时,它不允许我保存孩子们的数据,除非我创建学校和学校详细信息

例如,我需要在1所学校存储孩子A,我想在2所学校存储孩子2。如何做到这一点。我完全是初学者。任何帮助都很好。

请参见下面的示例:

class PaymentPlan():

  name = models.CharField(max_length=200)
  amount = models.FloatField(null=True)
  discount = models.FloatField(null=True)
  discount_amount = models.FloatField(null=True)
  no_of_users = models.CharField(null=True,max_length=100)
  no_of_brands = models.CharField(null=True,max_length=100)
  no_of_jobs = models.CharField(null=True,max_length=100)
  payment_data = models.CharField(null=True,max_length=100)
  plan_type = models.CharField(null=True,max_length=100)

class AccountSubscriptionDetail():
  plan = models.ForeignKey(PaymentPlan, related_name="plan_data")
  expiry_date = models.DateTimeField(default=timezone.now)
  charge = models.CharField(null=True,blank=True,max_length=100)
  billing_cycle = models.CharField(null=True,blank=True,max_length=100)
  account = models.ForeignKey(Account, related_name="account_sub_data")

这里我定义了foreignkeys连接到其他模式,您可以用这种方式使用

非常感谢您的回复。当我向AccountSubscriptionDetail发送数据时,如何在正确的付款计划下保存数据。我可能有1,2,3,4个计划。如何在2下保存。只需将其传递给计划id。如果您发现一些有用的答案,请向上投票。假设您添加了计划,他们的id将是id,accountsubscriptiondetail的id将是计划id。意思是将计划表中的id用作accountsubscriptiondetail中的计划id。我已接受您的答案。再让我知道一件事。我如何记录所有的身份证。我们应该从前端发送吗?我的意思是说我应该在某个地方预先填充id并传递它。如果没有ID,我可以将学校名称设为小学名称并通过吗?是的,您必须从某处通过ID,以添加与该ID相关的数据如果您想通过学校名称,请在此基础上输入密钥,而不是计划ID。请向上投票