Подход, который вы описываете, очень уместен. Возможно, вы могли бы бросить свою собственную альтернативу, которая делает то же самое немного более чётко, но я бы сказал, что тот факт, что это почти всё сделано для вас, является огромной победой.
В общем, лучше использовать этот подход со всеми интерактивными элементами в вашем приложении - сделать так, чтобы они связывались с ресурсами, оформленными в REST или с запросами, и использовать JavaScript для перехвата / переопределения этих действий, когда они доступны. Требуется сдвиг в подходе, но как только вы набираете обороты, на самом деле развитие этого пути занимает не так много времени. Фактически это помогает заставить ваше приложение работать с хорошими шаблонами SoC .