Я хочу разработать модель задачи, которая может быть связана с моделями проектов, другой моделью X и другими моделями задач.Очевидный выбор - внешний ключ, но я хочу, чтобы любой конкретный экземпляр этой модели Задачи был связан только с одним из этих типов моделей, то есть, если модель Задачи имеет отношение к модели Проекта, она не может иметь отношенияс другой моделью задачи и так далее.Любой совет, что было бы лучшим способом представить это?Спасибо.