LPgenerator / django-db-mailer

Django module to easily send emails/sms/tts/push using django templates stored on database and managed through the Django Admin
https://github.com/LPgenerator/django-db-mailer
GNU General Public License v2.0
256 stars 80 forks source link

Текст шаблона #7

Closed vosi closed 9 years ago

vosi commented 9 years ago

Теоретически, так как есть несколько бекендов (смс, ттс, мыло...) должен быть отдельный текст для каждого из бекендов т.е. шаблон один, а полей для текста несколько, может инлайнами ?

gotlium commented 9 years ago

Почему же? Для каждого бекенда - должен быть новый шаблон. Даже в теории текст смс и почты не пересекаются никак. Например нужно смс уведомление о новом лиде. Создаем шаблон и ставим категорию "Смс". Отправляя уведомление на почту о лиде, мы создаем новый развернутый шаблон (передавая больше данных) и помещаем в категорию "Почта". Теперь легко найти где у нас смс, а где почта. В коде так же визуально видно что и куда уходит. В случае с инлайном придется все равно вызывать две функции + теряется смысл фильтров в проекте. Если конечно сильно нужно, то можно создать собственный бекенд, и работать с шаблоном по своим правилам. Например можно без инлайнов сразу отправлять во все существующие бекенды сообщения. Ничто не мешает на уровне проекта добавить и инлайны при желании. Создал модель, отрегистрировал админку, зарегал свой админ класс с инлайном. Тут главное необходимо понимать что после разруливать придется и на уровне получателей, в группах, и в бекендах. Конечному программисту можно нынче рулить всем как хочется, при этом не трогая основной код батарейки.

gotlium commented 8 years ago

в качестве примера по сабжу был создан пример бекенда https://github.com/LPgenerator/django-db-mailer/blob/development/demo/demo/custom_backends/double.py