Я пытался создать модель «Контейнер тегов», в которой хранятся теги.Затем я попытался подключить такой контейнер с OneToOneFields к модели, где он мне нужен:
from tagging.fields import TagFields
class TagContainer(models.Model):
tags=TagFields
class UserProfile(models.Model):
cont1=models.OneToOneField(TagContainer,related_name="cont1",null=True,blank=True)
cont2=models.OneToOneField(TagContainer,related_name="cont2",null=True,blank=True)
После этого у меня появилось некоторое поведение, которое я хотел: При назначении TagContainer для моделей cont1 и попыткеназначить тот же контейнер другим моделям cont1, которые не работали.Но когда я пытаюсь назначить один и тот же TagContainer для cont1 и cont2 той же модели, это работает.Такое же поведение происходит, когда я пытаюсь использовать ForeignKeys с уникальным = True.
Я не могу гарантировать, что поля в экземпляре UserProfile указывают на два разных экземпляра TagContainer.Это возможно?
edit:
Только что обнаружил, что я могу назначить каждый TagContainer один раз для cont1 и один раз для cont2.Неважно, если это один и тот же UserProfile.