允许经过身份验证的用户预订多个用户Django

时间:2019-11-12 07:36:25

标签: django django-models

我正在制作一个具有预订功能的Django网站。现在,我已经创建了一个正常工作的网站,该网站可以预订单个用户(已登录)。我要允许登录的用户预订可能不在数据库中的多个朋友。我对模型感到困惑。我知道django有一个用于创建多个相似表单的表单集,但是我希望该表单的信息与单个用户(预订它们)相关联。所以我对模型的思考是:

class GroupBooking(models.Model):
    booker = models.ForeignKey(User,on_delete=models.CASCADE)
    number_of_people = models.PositiveIntegerField()

class UnregisteredUsers(models.Model):
    group = models.ForeignKey('GroupBooking',on_delete=models.CASCADE)
    name = models.CharField(max_length=50)
    mobile = models.CharField()
    # Other Information
    .        .        .
    .        .        .
    .        .        .

Number_of_people可以是创建的表单数量,也可以通过添加创建新表单并递增的按钮来动态更改。
我需要有关我的方法以及应该如何继续前进的建议。另外,我希望能获得一些阅读材料或教程,内容涉及该过程中涉及的功能。

1 个答案:

答案 0 :(得分:0)

您可以将MultiSelectField用于该特定字段,例如

对于 models.py

SPORTS_CHOICES = (('cricket','cricket')
                 ('badminton','badminton')
                 ('tennis','tennis'))
sports = MultiSelectField(max_length = 35, choices = CLASS_CHOICES)

对于 forms.py

SPORTS_CHOICES = (('cricket','cricket')
                 ('badminton','badminton')
                 ('tennis','tennis'))
sports = MultiSelectFormField(max_length = 35, choices = CLASS_CHOICES)