Отправил вопрос вчера, но я не слишком ясно понял, что я пытаюсь сделать. Я изо всех сил пытаюсь найти какие-нибудь полезные учебные пособия о том, как лучше всего достичь этого, так что толчок в правильном направлении будет с благодарностью.
Я установил модель, которая ссылается на django_content_type. Моя идея состоит в том, чтобы использовать эту модель для ссылки на другие модели, чтобы их можно было пометить как «рекомендуемый» контент, без необходимости добавлять новое поле «isFeatured» в каждую модель.
Все, что я хочу сделать, - это установить флажок в формах моего администратора для каждой модели, который указывает, присутствует ли контент или нет.
class FeaturedContent(models.Model):
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
Во-первых, это правильный подход?
Нужно ли создавать поле формы / модели? и как мне ввести это поле в шаблон администратора?
Я заглянул внутрь (django.contrib.contenttypes) generic.py, и вы можете четко видеть, куда загружаются данные шаблона, а также какой шаблон используется. Мне интересно, возможно, мне нужно расширить этот класс, а не писать свое собственное поле?
Спасибо за любую помощь,
Джеймс