Посмотреть помощник в Кохане - PullRequest
0 голосов
/ 07 июля 2011

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

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

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

Я новичок в 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 ]

0 голосов
/ 14 июля 2011

Я использовал Kjjjj - модуль jjuery ajax Pjax.Его код доступен на gitgub

0 голосов
/ 13 июля 2011

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

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>
...