使用Django模型在运行时动态生成SQL列

时间:2018-07-13 14:40:42

标签: django django-models

我正在尝试基于状态不同的特定运动队的当前活跃成员创建模型,我想基于ans字段值的数量生成一个Member_Name字段。例如,如果有3个活动Team_Members,则Django模型应相应地创建3个Team_Members字段。

Member_Name

1 个答案:

答案 0 :(得分:0)

我想这是一个不好的建模,应该改用many2many

class TeamMembers(models.Model):
    name = models.CharField(max_length=100)

class Sports(models.Model):
    state = models.CharField(max_length=100, choices=state, default=state[0])
    team_members = models.ManyToManyField(TeamMembers)
    sport = models.CharField(choice=SPORT_CHOICE, default=STATE_CHOICE[0])

这样,每个运动项可以拥有许多TeamMember,而许多TeamMembers可以成为许多运动项的一部分...如果您需要每个成员仅是一项运动项的一部分,则可以使用OneToManyField

签出Django文档:https://docs.djangoproject.com/en/2.0/topics/db/examples/many_to_many/

关于多对多关系的更多信息: https://support.airtable.com/hc/en-us/articles/218734758-A-beginner-s-guide-to-many-to-many-relationships