Как проверить уникальность двух полей из разных моделей в Django?
Добрый день.
У меня есть две модели, например, организации и юзеры. В каждой модели есть поле Имя.
Могу ли я проверить уникальность значений по этому полю в обеих моделях (урл будут /имя)?
Тут скорее всего, правильней делать общую таблицу с полем Имя, и в ней навесить UniqueConstraint, а организации и юзеры уже на нее через OneToOneField ссылаются.
askurashev, ну не единственный, можно просто через exists проверять, но это не атомарная операция, надо лочить таблицы, а это риск deadlock на ровном месте
Everything_is_bad, наиболее приемлемый.
Когда возникают такие вопросы, сразу думаешь о том, что архитектура не совсем удачная. Но, думаю, здесь не этот случай. Организации и юзеры - разные приложения с разным функционалом, но вот имя требуется уникальное для построения урлов.
Спасибо