Чем сложнее и функциональнее фреймворк тем страшнее им пользоваться. Любое готовое решение фиксирует твои возможности тем что оно собой представляет, и любой шаг в сторону потребует больше сил чем должны были бы на это потрачены.
Тогда метод replace вам не подходит
С этим согласен.