Zend_Dojo_Form 的装饰器

Posted

技术标签:

【中文标题】Zend_Dojo_Form 的装饰器【英文标题】:Decorators for Zend_Dojo_Form 【发布时间】:2011-11-19 15:08:40 【问题描述】:

我有一个 Zend_Dojo_Form 并且想为它更改装饰器:

//inside my Zend_Dojo_Form
$this->setDecorators(array(
        'FormElements',
        'DijitForm',
        array(array('tr' => 'htmlTag'), array('tag' => 'tr')),
        array(array('table' => 'HtmlTag'), array('tag' => 'table')),
    ));

渲染的表单看起来不错,但是如果我只提交 Zend_Form_Elements,但没有发布 Zend_Dojo_Form_Elements。如果我不更改装饰器,所有值都会提交,但布局(当然)会损坏。我错过了一些必不可少的装饰器吗?

【问题讨论】:

【参考方案1】:

问题原来是html多于zend相关

    $this->setDecorators(array(
        'FormElements',            
        array(array('tr' => 'HtmlTag'), array('tag' => 'tr')),
        array(array('table' => 'HtmlTag'), array('tag' => 'table')),
        'DijitForm',
    ));

有效,因为现在表单元素跨越了整个表格。

【讨论】:

以上是关于Zend_Dojo_Form 的装饰器的主要内容,如果未能解决你的问题,请参考以下文章

python 装饰器:装饰器实例类装饰器(装饰函数)

python 装饰器:装饰器实例类装饰器(装饰函数)

装饰器、装饰器类与类装饰器(三)

Python进阶装饰器(Decorator)

python 装饰器:装饰器实例内置装饰器

python 装饰器:装饰器实例内置装饰器