В течении последних двух месяцев работал над плагином redmine_intouch для компании Centos-admin.ru.
После завершения работ решил поделиться некоторыми нюансами, с которыми пришлось столкнуться в процессе разработки.
В этой публикации расскажу о пути, который пришлось пройти для того, чтобы реализовать гибкую систему разнообразных настроек.
Перво-наперво хочу оговориться. Эта статья о реализации логики хранения настроек проекта в плагине для Redmine.
Т.к. это плагин, то использовать сторонние гемы, в которых данный функционал реализован — крайне нежелательно, во избежание конфликтов с логикой самого Redmine.
Поэтому в этой публикации речь будет идти о реализации с нуля системы хранения настроек со сложной иерархией.
Как видно из скриншота, нужно как-то хранить данные с трёх спойлеров, в каждом из которых по несколько вкладок, а на каждой вкладке масса чекбоксов.
После завершения работ решил поделиться некоторыми нюансами, с которыми пришлось столкнуться в процессе разработки.
В этой публикации расскажу о пути, который пришлось пройти для того, чтобы реализовать гибкую систему разнообразных настроек.
Перво-наперво хочу оговориться. Эта статья о реализации логики хранения настроек проекта в плагине для Redmine.
Т.к. это плагин, то использовать сторонние гемы, в которых данный функционал реализован — крайне нежелательно, во избежание конфликтов с логикой самого Redmine.
Поэтому в этой публикации речь будет идти о реализации с нуля системы хранения настроек со сложной иерархией.
Как видно из скриншота, нужно как-то хранить данные с трёх спойлеров, в каждом из которых по несколько вкладок, а на каждой вкладке масса чекбоксов.