在 PHP Zend Form 上设置值
Setting Value on PHP Zend Form
我目前有一个可以让您创建家庭的表格。
FamilyForm.php
$description = new Textarea(self::KEY_FAMILY_DESCRIPTION);
$description->setAttribute("id", self::KEY_FAMILY_DESCRIPTION);
$description->setLabel("Description");
$this->add($description);
$status = new Hidden(self::KEY_FAMILY_STATUS);
$status->setAttribute("id", self::KEY_FAMILY_STATUS);
$this->add($status);
$save = new Button(self::KEY_SAVE_BTN);
$save->setAttributes(array("id", self::KEY_SAVE_BTN));
$save->setLabel("Save");
$save->setValue("Save");
$this->add($save);
Create.phtml
<?php echo ctrlGroup($this, ProjectFamilyForm::KEY_FAMILY_DESCRIPTION, !($this->admin)); ?>
<?php echo ctrlGroup($this, ProjectFamilyForm::KEY_FAMILY_STATUS, !($this->admin)); ?>
<div class="form-actions">
<?php $save = $this->form->get(ProjectFamilyForm::KEY_SAVE_BTN); ?>
<?php $save->setAttribute("class", "btn btn-primary"); ?>
<?php echo $this->formSubmit($save); ?>
<a class="btn" href="<?php echo $this->url('home'); ?>">Cancel</a>
</div>
这有效,允许我在创建时输入描述和家庭状态。但是,每次创建一个家庭时,status
应该是 "active"
。但是,setValue()
方法似乎不起作用。
我不是 ZEND
方面的专家,但是有一些方法可以做到这一点:-
最可取的方式:- 让你的 db table 字段 set
类型并将默认值设置为 active
.
创建一个具有预定义 active
值的隐藏字段。
请检查此 link 以获得帮助:- http://forums.zend.com/viewtopic.php?t=2079
我目前有一个可以让您创建家庭的表格。
FamilyForm.php
$description = new Textarea(self::KEY_FAMILY_DESCRIPTION);
$description->setAttribute("id", self::KEY_FAMILY_DESCRIPTION);
$description->setLabel("Description");
$this->add($description);
$status = new Hidden(self::KEY_FAMILY_STATUS);
$status->setAttribute("id", self::KEY_FAMILY_STATUS);
$this->add($status);
$save = new Button(self::KEY_SAVE_BTN);
$save->setAttributes(array("id", self::KEY_SAVE_BTN));
$save->setLabel("Save");
$save->setValue("Save");
$this->add($save);
Create.phtml
<?php echo ctrlGroup($this, ProjectFamilyForm::KEY_FAMILY_DESCRIPTION, !($this->admin)); ?>
<?php echo ctrlGroup($this, ProjectFamilyForm::KEY_FAMILY_STATUS, !($this->admin)); ?>
<div class="form-actions">
<?php $save = $this->form->get(ProjectFamilyForm::KEY_SAVE_BTN); ?>
<?php $save->setAttribute("class", "btn btn-primary"); ?>
<?php echo $this->formSubmit($save); ?>
<a class="btn" href="<?php echo $this->url('home'); ?>">Cancel</a>
</div>
这有效,允许我在创建时输入描述和家庭状态。但是,每次创建一个家庭时,status
应该是 "active"
。但是,setValue()
方法似乎不起作用。
我不是 ZEND
方面的专家,但是有一些方法可以做到这一点:-
最可取的方式:- 让你的 db table 字段
set
类型并将默认值设置为active
.创建一个具有预定义
active
值的隐藏字段。
请检查此 link 以获得帮助:- http://forums.zend.com/viewtopic.php?t=2079