Есть блог.
Есть модель с 3мя классами, каждый из которых является подкатегорией предыдущего. Четвертый класс - посты.
Объекты структурированы примерно так:
├───Category1
│ ├───Subcategory11
│ │ ├───subsubcategory111
│ │ ├───subsubcategory112
│ │ └───subsubcategory113
│ ├───Subcategory12
│ │ ├───subsubcategory121
│ │ ├───subsubcategory122
│ │ └───subsubcategory123
│ └───Subcategory13
│ ├───subsubcategory131
│ │ ├───post1311
│ │ ├───post1312
│ │ └───post1313
│ ├───subsubcategory132
│ │ ├───post1321
│ │ ├───post1322
│ │ └───post1323
│ └───subsubcategory133
│ ├───post1331
│ ├───post1332
│ └───post1333
Необходимо реализовать механизм оповещений по email о новых категориях\подкатегориях\постах следующим образом:
- пользователь может подписаться на категорию (добавить в избранное) - тогда он будет получать уведомления обо всех движениях по самой категории и её дочерних объектах (подкатегориях, постах - при добавлении\редактировании\удалении оных)
- пользователь может подписаться на подкатегорию (добавить в избранное) - тогда он будет получать уведомления обо всех движениях по этой подкатегории и её дочерних объектах (постах - при добавлении\редактировании\удалении оных)
- пользователь может подписаться на пост (добавить в избранное) - тогда он будет получать уведомления обо всех движениях (редактирование\удаление\комментирование) по этому посту.
Пользователь должен иметь возможность настроить себе произвольный набор объектов, движения по которым он хочет отслеживать.
Подскажите пожалуйста, как это лучше реализовать?
1. С помощью штатных средств django - syndication feed framework или для данной задачи есть более подходящие решения? При таком решении пользователю нужно будет добавлять себе несколько лент? Либо есть возможность собрать одну ленту из необходимых категорий\подкатегорий\объектов?
2. Может быть проще сделать что-то вроде механизма подписки, только не по пользователям, а по категориям\подкатегориям объектов\самим объектам? К примеру, на тостере здОрово
реализована кастомизация оповещений, хотя не знаю на чем написан тостер...