2016-09-11 6 views
0

Я использую django-photologue и расширил его:Как сохранить использование 3-х админ-шаблонов приложений после настроек admin.py?

# gallery.models.py 
from photologue.models import Photo 
from profiles.models import UserProfile 

class PhotoExtended(Photo): 
    user = models.ForeignKey(UserProfile, verbose_name=_('user'), on_delete=models.CASCADE) 

# gallery.admin.py 
from photologue.admin import PhotoAdmin as PhotoAdminDefault 
from photologue.models import Photo 

from .models import PhotoExtended 

class PhotoAdmin(PhotoAdminDefault): 
    save_on_top = True 

admin.site.unregister(Photo) 
admin.site.register(PhotoExtended, PhotoAdmin) 

Photologue имеет функцию для загрузки архива с фотографиями, и это может быть сделано с помощью дополнительной кнопки в админ. После моих изменений эта кнопка исчезла.

Можно ли использовать собственные шаблоны администратора photologue s, чтобы избежать копирования их в папку шаблона моего приложения? В INSTALLED_APPSphotologue выше моего gallery приложения

Here есть в photologue сек администратора шаблоны.

ответ

0

На пути templates/admin/photologue/photo/change_list.html часть photo соответствует модели Photo. Вы подклассифицировали эту модель. Новое название модели - PhotoExtended, но нет шаблона в templates/admin/photologue/photo_extend/change_list.html.

Скопируйте change_list.html из приложения photologue в свою папку с шаблонами приложений. Например: project/app/templates/admin/photologue/photo_extend/change_list.html.

В качестве альтернативы вы можете просто создать новый файл и использовать, включают старый шаблон:

# project/app/templates/admin/photologue/photo_extend/change_list.html 
{% include 'admin/photologue/photo/change_list.html' %} 

Update: Другой альтернативой является набор (один из) свойства BaseModelAdmin:

# Custom templates (designed to be over-ridden in subclasses) 
add_form_template = None 
change_form_template = None 
change_list_template = None 
delete_confirmation_template = None 
delete_selected_confirmation_template = None 
object_history_template = None 
+0

Я не уверен на 100%, если 'PhotoExtend' сопоставляется с' photo_extend' или 'photoextend'. – allcaps

+0

'class PhotoAdmin (PhotoAdminDefault): save_on_top = True change_list_template = 'admin/photoologue/photo/change_list.html'' идеально работает. Нет необходимости создавать новый файл. Спасибо – TitanFighter

+0

Да, это работает, но другие альтернативы неплохие. Это просто зависит от вашего требования. Очевидно, что вам нужен только контент исходного шаблона. Но если вам нужно немного изменить шаблон, лучше просто создать файл шаблона в правом каталоге и сделать с ним. – allcaps

 Смежные вопросы

  • Нет связанных вопросов^_^