que tienen una situación en la que quiero usar las opciones Meta de unique_together
para hacer cumplir una norma determinada, aquí está el modelo intermediario:Django único Juntos (con claves externas)
class UserProfileExtension(models.Model):
extension = models.ForeignKey(Extension, unique=False)
userprofile = models.ForeignKey(UserProfile, unique=False)
user = models.ForeignKey(User, unique=False)
class Meta:
unique_together = (("userprofile", "extension"),
("user", "extension"),
# How can I enforce UserProfile's Client
# and Extension to be unique? This obviously
# doesn't work, but is this idea possible without
# creating another FK in my intermediary model
("userprofile__client", "extension"))
y aquí está PerfilUsuario:
class UserProfile(models.Model):
user = models.ForeignKey(User, unique=True)
client = models.ForeignKey(Client)
Gracias.
Sólo tenga cuidado. Esto puede fallar si está usando transacciones (que probablemente sea). – mlissner