[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Yii - сохранение формы
Stasonix
$theme = new Theme();

$form = new CForm('application.views.site.form',$theme);

if ($form->submitted('Theme')) {

$theme->slug = 'test';
$theme->attributes = $form['Theme'];

if ($theme->validate()){
$theme->save();
}
}


Специально поле `slug` сделал как 'test', но увы, сохраняются только те аттрибуты, которые присутствуют на форме.

Как сохранить данные и в поле `slug` тоже, даже если их нет на форме?


это пример формы:
return array(

'title'=>'New Theme',

'elements'=>array(
'title'=>array(
'type'=>'text',
'maxlength'=>32
),
),



'buttons'=>array(
'submit'=>array(
'type'=>'submit',
'label'=>'submit'
)
)

);
Stasonix
я уже и фильтр в модели использовал:

         /**
*
@return array validation rules for model attributes.
*/

public function rules()
{
return array(
array('slug','filter','filter'=>array('TranslitFilter','str2url')),
);

}


все равно какой-то бред сохраняет ( числа с минусом, вместо translit'a ).

Да, кстати, для того чтобы урл были нормальные использую модуль: yiibehaviorsluggable
Stasonix
var_dump($str); // выводит test


Т.е. функция фильтра срабатывает, а вот сохраняет в таблицу совсем не то что хотелось бы...
T1grOK
В валидаторах косяков нету?

_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
Stasonix
Цитата (T1grOK @ 22.09.2013 - 14:37)
В валидаторах косяков нету?

Каких валидаторах?

Вот пример транслитерации url: TranslitFilter

у меня почти точно такое же.
Stasonix
вообщем-то кажется понял в чем проблема, модуль зря я этот подключал.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.