public function action_add() { $content = $this->template->content = View::factory('admin/pages/form'); $this->_scripts[] = 'media/external/ckeditor/ckeditor.js'; if($_POST) { $page = ORM::factory('page'); $post = $page->validate_create($_POST); if($post->check()) { $page->values($post); $page->save(); Request::instance()->redirect('admin/pages'); } else { $content->errors = $post->errors(); } } }
W modelu page.php :
public function validate_create(& $array) { $array = Validate::factory($array) ->rules('name', $this->_rules['name']) ->rules('link', $this->_rules['link']) ->filter('name', 'trim') ->filter('link', 'trim'); foreach($this->_callbacks as $callbacks => $field) { foreach($callbacks as $callback) { } } return $array; }
pola w formularzu wysyłane postem: name, link, content. No i mam też pewien problem, a że jestem początkujący to nie potrafię sobie poradzić. Mianowicie zapisuje do bazy wszystko poza contentem, także i link i name jest ok, a content nie. Domyśliłem się, że to przez to, że nie dałem żadnej walidacji contentu, ale nie chcę, a nie wiem jak to inaczej ominąć.
Proszę o pomoc, i wyrozumiałość

Edit: dałem bez referencji w validate_create i do metody values przekazałem $_POST i działa

ale mimo to ciekawi mnie czy można jakoś wskazać walidatorowi pole, które nie ma żadnych reguł walidacji?