Foreign Key relations in Django, with a select condition
I've a table of partner type
PartnerType
Name
Description
RelatedToProject
I've a PartnerMaster
Name
Address
PartnerType
I've a Project Table
Name
Partner (from partner master)
The partner in the project table has to be only of those types who have RelatedToProject = True
How can I achieve this in the model definition itself开发者_StackOverflow.
I don't have much experience with Django, but you may want to consider removing the RelatedToProject field and adding another class called PartnersRelatedToProjects (or something like that). Then simply set up a normal foreign key from this new class to the Partner table, and in the Project class set up a normal foreign key to this new table.
You would then need to keep track of which partners are related to projects by adding them to the new PartnersRelatedToProjects table.
class Partner(models.Model):
Name = models.CharField(max_length=200)
Description = models.CharField(max_length=200)
class PartnersRelatedToProjects(models.Model):
partner = models.ForeignKey('Partner')
class Project(models.Model):
name = models.CharField(max_length=200)
partner = models.ForeignKey('PartnersRelatedToProjects')
加载中,请稍侯......
精彩评论