Sql Django:ManyToManyField,带附加列
我正在尝试与Django一起创建一份工作申请表 基本上,我创建了两个模型Sql Django:ManyToManyField,带附加列,sql,django,sqlite,model,manytomanyfield,Sql,Django,Sqlite,Model,Manytomanyfield,我正在尝试与Django一起创建一份工作申请表 基本上,我创建了两个模型 软件技能模型 应用模型 管理员可以登录到管理部分并添加新的软件技能- 数据库条目。应用程序模型引用了这些 使用多个字段的softwareskill条目/记录: class softwareskill_model(django.db.models.Model): name = django.db.models.CharField(max_length=200) class application_model(d
- 软件技能模型
- 应用模型
class softwareskill_model(django.db.models.Model):
name = django.db.models.CharField(max_length=200)
class application_model(django.db.models.Model):
# ...
softwareskills = django.db.models.ManyToManyField(softwareskill_model)
因此,如果有人想申请这份工作,他可以选择哪一个
他使用的软件包
现在,我希望申请人对每项软件技能进行1-6分的评分
他选择了。你是怎么做到的
我正在使用SQLite3数据库,发现ManyToManyField
创建一个新表来存储关系。在我看来
这:
我的假设是简单地添加一个新列,使其如下所示:
| ID | application_model_id | softwareskill_model_id | Rating |
这是可能的/最好的方法吗?怎么做
我对Django、数据库和web开发非常陌生,希望如此
你可以帮我:-)
谢谢,,
亨利是你需要使用的,例如
class softwareskill_model(django.db.models.Model):
name = django.db.models.CharField(max_length=200)
class application_model(django.db.models.Model):
# ...
softwareskills = django.db.models.ManyToManyField(softwareskill_model, through="ApplicationSoftwareSkill")
class ApplicationSoftwareSkill(models.Model):
softwareskill = models.ForeignKey(softwareskill_model)
application = models.ForeignKey(application_model)
# extra fields here e.g.
rating = models.IntegerField()
class softwareskill_model(django.db.models.Model):
name = django.db.models.CharField(max_length=200)
class application_model(django.db.models.Model):
# ...
softwareskills = django.db.models.ManyToManyField(softwareskill_model, through="ApplicationSoftwareSkill")
class ApplicationSoftwareSkill(models.Model):
softwareskill = models.ForeignKey(softwareskill_model)
application = models.ForeignKey(application_model)
# extra fields here e.g.
rating = models.IntegerField()