Как добавить форму в CompleteLister ATK4
Я хочу добавить простую форму в каждую строку CompleteLister. Я пробовал это:
<?php
class page_list extends Page {
function init(){
parent::init();
$l = $this->add('Lister_Comment',null,'comm_list_spot','comm_list_spot');
$l->setModel('Comment');
}
function defaultTemplate(){
return array('view/comment_list');
}
}
class Lister_Comment extends CompleteLister {
function formatRow(){
parent::formatRow();
$f = $this->add('Form');
$f->addField('line','com_text');
$f->addSubmit();
$this->current_row_html['commm'] = $f->getHTML();
}
}
?>
`Но это не работает. Что я делаю не так?
Спасибо.
1 ответ
Форма - это деликатный вид, и она должна правильно сидеть в дереве визуализации. Вот как вы могли бы реализовать это лучше:
- вручную пройтись по модели
- внутри итерации добавьте представление с содержанием строки вашего списка
- добавить новую форму внутри тэга comm, используя 3-й аргумент add()
Это должно работать намного лучше.