I have following code
JavaScript
x
9
1
class Version(models.Model):
2
version = CharFeild
3
version_url = UrlField
4
5
class MyModel(models.Model):
6
name = CharFeild
7
default_version = OnetoOneField(Version)
8
available_versions = ForeignKeyField(Version)
9
i am getting stuck at when selecting available version i am only able to pick one, where i want to select all available or all the ones i require.
Advertisement
Answer
ForeignKeyField
refers to one Version
from MyModel
You are misunderstanding the purpose of foreign keys. Your MyModel
needs to be parent to all Version
, that are used as available_versions
, so that means You have to have one parent from child model, so your parent will have multiple childs and children will have only one parent. That means you have to use ForeignKeyField
inside Versions
JavaScript
1
9
1
class Version(models.Model):
2
version = CharFeild
3
version_url = UrlField
4
model = ForeignKey('MyModel', on_delete=models.CASCADE, related_name='available_versions', null=True, blank=True)
5
6
class MyModel(models.Model):
7
name = CharFeild
8
default_version = OnetoOneField(Version, related_name='default_model')
9
I am not sure that there won’t be any related_names
collision (as it’s a bit quirky), but I think you get the point