Задний план
Я использую виджет слова как частичное представление, которое имеет свой собственный контроллер (то есть свои собственные действия), и оно размещено почти на всех страницах. Я реализую рендеринг этого через HMVC, это просто здорово.
Проблема
Теперь проблема в том, что виджет сам выполняет действия. Подумайте о виджете корзины покупок. Этот виджет размещается на всех страницах, чтобы пользователь все время мог видеть свои материалы. И у виджета есть связанные с ним действия, например: RemoveItem, RefreshCart, ApplyDiscountCoupon и т. д. Такие действия должны запускаться кнопкой или ссылкой, и ссылка должна быть примерно такой (в HMVC):
<a href='<?site_url()?>/cart/cart/removeitem/the_item_id'>Remove this item</a>
Ok. Теперь пользователь щелкает эту ссылку, модуль корзины и контроллер корзины загружаются, и действие выполняется, действие должно выглядеть примерно так:
function removeitem($itemid)
{
// remove the item from db
...
// "load the view" ???
}
Как видите, мой вопрос заключается в том, как загрузить представление в модуль HMVC. Дело в том, что если я загружу только вид корзины, он покажет только мою корзину, и я не могу просто перенаправить или загрузить главную страницу, потому что это может быть любая главная страница, то есть: корзина может быть на любой главной странице. (выбрать продукт, продолжить покупку, просмотреть сведения о продукте, платежную информацию, оформить заказ и т. д.). :/
Другое дело: требование, чтобы я не мог использовать AJAX в этом проекте.
Вы знаете, как HMVC справляется с этим?
Заранее спасибо.