Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » [SOLVED] Как получить в админке данные через обратную связь при использовании GenericTabularInline? [RSS Feed]

#1 Окт. 13, 2016 19:51:52

TitanFighter
Зарегистрирован: 2015-06-23
Сообщения: 99
Репутация: +  0  -
Профиль   Отправить e-mail  

[SOLVED] Как получить в админке данные через обратную связь при использовании GenericTabularInline?

Я могу добавить “критерии” какому то “месту”. Как добавить “места” какому то “критерию”?

Модели:

 class Criterias(models.Model):
    name = ...
class Places(models.Model):
    name = ...
class PlacesToCriterias(models.Model):
    content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
    object_id = models.PositiveIntegerField()
    content_object = GenericForeignKey()
    criteria_group = models.ForeignKey(Criterias)

Админка - Места:
 class PlaceCriteriasInlineAdmin(GenericTabularInline):
    model = PlacesToCriterias
class PlacesAdmin(admin.ModelAdmin):
    inlines = [PlaceCriteriasInlineAdmin]
admin.site.register(Places, PlacesAdmin)
В данном случае, на странице редактирования “Места” я могу добавить “Критерии”.

Админка - Критерии:
 class CriteriaPlacesInlineAdmin(GenericTabularInline):
    model = PlacesToCriterias
class CriteriasAdmin(admin.ModelAdmin):
    inlines = [CriteriaPlacesInlineAdmin]
admin.site.register(Criterias, CriteriasAdmin)
В данном случае, на странице редактирования “Критерия” я НЕ могу добавить “Места”. Вместо возможного списка мест я вижу список критериев.

Как получить список мест на странице критерия?

Отредактировано TitanFighter (Окт. 14, 2016 00:02:09)

Офлайн

#2 Окт. 14, 2016 00:01:46

TitanFighter
Зарегистрирован: 2015-06-23
Сообщения: 99
Репутация: +  0  -
Профиль   Отправить e-mail  

[SOLVED] Как получить в админке данные через обратную связь при использовании GenericTabularInline?

Все оказалось очень просто - нужно было вместо GenericTabularInline использовать admin.TabularInline

 class CriteriaPlacesInlineAdmin(admin.TabularInline):
    model = PlacesToCriterias
class CriteriasAdmin(admin.ModelAdmin):
    inlines = [CriteriaPlacesInlineAdmin]
admin.site.register(Criterias, CriteriasAdmin)

Офлайн

  • Начало
  • » Django
  • » [SOLVED] Как получить в админке данные через обратную связь при использовании GenericTabularInline?[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version