На моем сайте django у меня есть два приложения, блог и ссылки. у блога есть блог-блог модели, а ссылки имеют ссылку на модель. Между этими двумя вещами должно быть одно-много отношений. Есть много ссылок на blogpost, но у каждой ссылки есть одно и только одно сообщение в блоге. Простой ответ - поставить ForeignKey на blogpost в модели ссылок.
Это все хорошо и хорошо, однако есть проблема. Я хочу сделать приложение ссылок повторно используемым. Я не хочу, чтобы это зависело от приложения для блога. Я хочу, чтобы иметь возможность использовать его снова на других сайтах и, возможно, связывать ссылки с другими приложениями и моделями, отличными от blogpost.
Общий внешний ключ кажется, что это может быть ответ, но не совсем. Я не хочу, чтобы ссылки могли быть связаны с какой-либо моделью на моем сайте. Только тот, который я явно указываю. И я знаю из предыдущего опыта, что могут возникать проблемы с использованием общих внешних ключей с точки зрения использования базы данных, потому что вы не можете делать select_related через общий внешний ключ так, как вы можете, с помощью обычного внешнего ключа.
Каков "правильный" способ моделирования этих отношений?