Посмотреть помощник в Кохане

Я пытаюсь найти способ сделать следующее:

Я хочу сделать действие, которое будет загружено через ajax, а также его внутреннюю часть страницы при перезагрузке страницы.

Я знаю это в ZEND фреймворк с помощью View Helper, но не знаю, как это сделать в Kohana

Я новичок в Кохане.

РЕДАКТИРОВАТЬ: Пример того, что я пытаюсь сделать http://www.espncricinfo.com/west-indies-v-india-2011/engine/current/match/489228.html?CMP=chrome

На приведенной выше веб-странице, когда загружается вся веб-страница, загружается доска результатов. Но когда вы нажимаете на кнопку "Обновить табло", только доска результатов в реальном времени заменяется на ajax.

Я хочу создать действие сказать action_scoreboard который будет использоваться для получения данных табло. А также action_index загрузить всю страницу, но пока в поле зрения action_index мне нужно позвонить action_scoreboard,

Спасибо

2 ответа

Решение

Я использовал Kopjax - Pjax JQuery AJAX модуль. Его код доступен на gitgub

Не уверен, что это лучший способ сделать это, но мне нравится справляться с ситуацией.

public function action_index($raw = 0) {
    $records = Jelly::select('scores')->execute();

    if ($raw == 0) {
        $view = new View('purdy');
        $view->records = $records;
        $this->template->content = $view;
    } else {
        $this->auto_render = FALSE;
        $this->request->headers['Content-Type'] = 'text/xml';
        $view = new View('raw');
        $view->records = $records;
        $this->response->body($view->render());
    }
}

### THE PURDY VIEW ###
<table>
    <? 
    foreach ($records as $record) {
        echo '<tr>';
        echo '<td>'.$record->name.'</td>';
        echo '<td>'.$record->value.'</td>';
        echo '</tr>';
    }
    ?>
</table>

### THE RAW VIEW ###
<?xml version="1.0" encoding="utf-8"?>
<scores>
    <? 
    foreach ($records as $record) {
        echo '<score>';
        echo '<name>'.$record->name.'</name>';
        echo '<value>'.$record->value.'</value>';
        echo '</score>';
    }
    ?>
</scores>
Другие вопросы по тегам