Полагаю, немного больше разъяснений, что именно вы подразумеваете под "подходящим"?
Один метод может быть для каждого доступного "widgit", чтобы быть контроллером, и затем вы можете использовать jQuery (или что угодно) для вызова указанного метода и рендеринга. Страница будет иметь серию «списков» (которые вы можете сохранить в БД) против пользователя, и вы можете просто упорядочить эти списки для отображения соответствующих виджетов в правильном порядке.
Очевидно, это ОЧЕНЬ большое упрощение ....