У меня есть общий вид Django, который отображает шаблон. Шаблон находится в приложении, которое будут использовать другие проекты. Импорт проектов обычно подклассифицируется в представлении "Просмотр приложения". В представлении есть шаблон по умолчанию, который выполняет задание с общей формулировкой.
99% времени, подклассирование Views будет хотеть только изменять текст, поэтому вместо того, чтобы заставить их дублировать шаблон для изменения формулировки без разметки, я ищу способ разрешить пользователям класса чтобы заменить формулировку в шаблоне наиболее эффективным способом.
Параметры, изученные до сих пор:
- частичные части шаблона, содержащие только текст, который может использовать приложения (магия, много работы пользователя)
- A
template_strings
на представлении, которое предоставляет бит строк, которые заканчиваются в контексте шаблона, которые подклассы могут переопределять - Использование (злоупотребление?) системы перевода, так что приложение предоставляет английские переводы по умолчанию, а использование кода может обеспечить их собственные переводы вместо этого (на самом деле это не работало, а просто идея).
- Выполнение вышеприведенного
template_strings
через AppConfig, но это кажется... yucky, как будто это может стать очень неуязвимым с множеством английских строк. Если я это сделаю, я создам контекстно-подобную настройку, поэтому вам не нужно повторно объявлять все строки
Похоже, что проблема должна быть решена для подкласса представления, которое выполняет полную работу и просто предоставляет альтернативные строки для текста. Есть ли лучший способ, чем выше? Конвенция? Что-то мне не хватает?
(django 1.11 Python 3.6.2)