Как создать файл представления, чтобы показать детали и получить выходные данные формы? - PullRequest
0 голосов
/ 11 января 2012

Я создаю Вопрос и ответы , чтобы показать пользователю Вопрос и получить ответы на эти вопросы от пользователей.

Я пытался использовать CListView, но его можно использовать только для показа вопроса, его нельзя использовать для получения ответов.

<?php $this->widget('zii.widgets.CListView', array(
    'dataProvider'=>$dataProvider,  'model'=>$model,
    'itemView'=>'_view', )); ?>

Может ли кто-нибудь иметь опыт создания файла представления для отображения деталей и получения выходных данных формы?

1 Ответ

1 голос
/ 11 января 2012

Боюсь, я не думаю, что есть какой-либо такой помощник вида ... Но я реализовал такую ​​функциональность, используя Listview ..

Включите это в индексный файл вашего вопроса, который вызывает просмотр списка (код, который вы написали)

<form action="<?php echo $this->createUrl("question/answer");?>">
    <?php $this->widget('zii.widgets.CListView', array(
        'dataProvider'=>$dataProvider,
        'itemView'=>'_view',
        'template'=>"{items}\n{pager}",
    )); ?>
    <input type="submit">
</form>

Включить эти строки в файл _view, вызываемый из списка. Я предполагаю, что id - это идентификатор вопроса.

    <input type="text" name="Question[<?php echo $data->id; ?>]" />

Теперь для каждого вопроса будет текстовое поле с именем Question [question_id] и одна кнопка отправки, которая будет иметь действие для ответа на вопрос функции контроллера, в которой вы можете вставить ответы в базу данных или сделать что-нибудь с ответами ..

public function actionAnswer()
{
    foreach ($_GET['post'] as $key=>$ans)
    {
        echo $key; //Question Id
        echo $ans;//Answer sent by the user
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...