Form Builder и Widgets

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Stepan
Сообщения: 23
Зарегистрирован: 2010.09.09, 18:48

Form Builder и Widgets

Сообщение Stepan »

Часть документации построителя форм касательно виджетов:
Кроме данных типов полей, в свойстве type можно указать класс или псевдоним пути виджета. Класс виджета должен наследовать CInputWidget. При генерации элемента формы, будет создан и выполнен экземпляр класса виджета. Виджет будет использовать конфигурацию, переданную через настройки элемента формы.
Хочеться увидеть правильный пример, к примеру подключаем каптчу, как должет выглядеть файл настроек?

Код: Выделить всё

    return array(
        'title'=>'...',

        'elements'=>array(
            'email'=>array(...),

            'my_captcha' => array('type'=>'system.web.widgets.captcha.CCaptcha'),
             *** что  еще тут ***
        ),

        'buttons'=>array(...),
        ),
    ); 
Что здесь должно быть дополнено?
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Form Builder и Widgets

Сообщение slavcodev »

Жду Yii 3!
Stepan
Сообщения: 23
Зарегистрирован: 2010.09.09, 18:48

Re: Form Builder и Widgets

Сообщение Stepan »

В этой теме как минимум не вижу соответствия этой строке документации:
в свойстве type можно указать класс или псевдоним пути виджета
И как мне кажеться добавление виджета через "Yii::..." в файле конфигурации хоть и работает, но не правильно. Я не прав?
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Form Builder и Widgets

Сообщение slavcodev »

Я бы не сказал что не правильно, но не красиво. В любом случае CCaptcha использовать не получится. Из той же документации к CForm
Note, the widget must have a property called "model" which expects a model object, and a property called "attribute" which expects the name of a model attribute.
Значит нужно будет написать свой виджет (extends CInputWidget), который нарисует картинку и выведет input
Жду Yii 3!
Stepan
Сообщения: 23
Зарегистрирован: 2010.09.09, 18:48

Re: Form Builder и Widgets

Сообщение Stepan »

mc-bear писал(а):Я бы не сказал что не правильно, но не красиво. В любом случае CCaptcha использовать не получится. Из той же документации к CForm
Note, the widget must have a property called "model" which expects a model object, and a property called "attribute" which expects the name of a model attribute.
Значит нужно будет написать свой виджет, который нарисует картинку и выведет input
Расширить CCaptcha под эту задачу не получится? (всмысле унаследовать CCaptcha для своего виджета и дополнить его).
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Form Builder и Widgets

Сообщение slavcodev »

Получится, добавить $model, $attribute
Но можно и отдельно виджет и в нем вывести CCaptcha, в чем проблема?
Жду Yii 3!
Ответить