Bookmark and Share

Lee's 程序人生

HTML CSS Javascript XML AJAX ATLAS C# C++ 数据结构 软件工程 设计模式 asp.net Java 数字图象处理 Sql 数据库
  博客园  :: 首页  :: 新随笔  :: 联系 :: 管理

Yii 1.1 新元素 CForm

Posted on 2010-02-24 22:01  analyzer  阅读(651)  评论(0编辑  收藏  举报

1.1中增加了表单构建器CForm,对于表单构建器大家总是褒贬不一,有的人认为简化了工作,有的人认为把原来简单的事情复杂化了。个人认为对于构建不需要有复杂界面修饰布局的表单,表单构建器还是不错的选择,这还增加了表单的复用性。

让我们看看代码,CForm是如何工作的:

// action:
$config = array(
    'action' => array('site/login'),
    'method' => 'post',
    'elements' => array(
        'username' => array('type' => 'text'),
        'password' => array('type' => 'password'),    
    ), 
    'buttons' => array(
        'login' => array('type' => 'submit', 'label' => '登录'),    
    ),   
);
$form = new CForm($config, new User);
if ($form->submitted() && $form->validate()) {
    //.......
}
$this->render('test', array('form' => $form));

//view:    
<div>
    <?php echo $form ?>
</div>

我们以后可以把config放在一个单独的配置文件里来管理, 这样整个程序的代码看上要干净很多。

在Yii的表单构建器中并没有提供像Zend Framework里的那样的表单修饰器,所以界面元素比较单一, 如果需要对界面元素做大量修改,我们需要重写render()方法。

我要啦免费统计