gpt4 book ai didi

python - 使用另一个模型中的行创建 MultipleChoiceField,

转载 作者:太空宇宙 更新时间:2023-11-03 18:59:07 24 4
gpt4 key购买 nike

我正在为一家拥有多个地点的公司创建在线职位申请。我希望申请人能够选择代表他们想要申请的每个商店(可以是多个)的复选框。我对于出于可扩展性目的对这些进行硬编码犹豫不决,因此我希望创建 2 个模型(我有更多模型,但对于本例来说,这是唯一相关的 2 个模型):

申请人

class Applicant(models.Model):
name = models.CharField(max_length=200)
city = models.CharField(max_length=200)
state = models.CharField(max_length=200)
zip = models.CharField(max_length=200)
social_security_number = models.CharField(max_length=200)
phone = models.CharField(max_length=200)
alt_phone = models.CharField(max_length=200, blank=True)
us_citizen = models.BooleanField()
committed_felony = models.BooleanField()
is_16 = models.BooleanField()
has_drivers_license = models.BooleanField()
is_disabled = models.BooleanField()
prev_employed = models.BooleanField()
felony_explanation = models.TextField(blank=True)
disabled_explanation = models.TextField(blank=True)
prev_employment_manager = models.CharField(max_length=200, blank=True)
prev_employment_year = models.CharField(max_length=4, blank=True)
skills = models.TextField()
was_completed = models.BooleanField(default=False)

def __unicode__(self):
return self.name

商店

class Store(models.Model):
code = models.CharField(max_length=10)
description = models.CharField(max_length=200)
city = models.CharField(max_length=20)
state = models.CharField(max_length=20)

def __unicode__(self):
return self.description

我(我认为)希望在申请人模型中添加一个 MultipleChoiceField,它从 Store 的所有实例中创建选择(每一行一个)。到目前为止,我已经在申请人类中尝试过:

def get_stores():
self.stores = Store.objects.all()

但无法(据我所知)像我希望的那样获取 Store 的实例。我有几个问题:

  • 是否可以引用另一个类似的模型?
  • 从申请人模型中引用商店模型是否是创建多个复选框以让申请人选择他们要申请的所有商店(并允许动态更改列表)的正确开始?
  • 在我提取所有 Store 实例后,MultipleSelectField 是执行此操作的最佳方法吗?

最佳答案

这似乎是 ManyToManyField 的规范用例。

class Store(models.Model):
...

class Applicant(models.Model):
name = models.CharField(max_length=200)
...
was_completed = models.BooleanField(default=False)

stores = ManyToManyField(Store, related_name='applicants')

当您在字段中显示此表单时,它应该自动使用MultipleSelectField

引用号:https://docs.djangoproject.com/en/dev/topics/db/examples/many_to_many/

关于python - 使用另一个模型中的行创建 MultipleChoiceField,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16475360/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com