2012-08-19 60 views
0

形式我有一个Yii behavior,即增加了一些自定义字段与条件行为与警予

_form.php这个

$form->attachbehavior('users', new DirectoriesBehavior); 

// return part of form 
echo $form->getDirectory(array('sysName' => 'users', 'useDefaultValue' => true)); 

// Other form parts (default for yii) 
echo $form->labelEx($model, 'name'); 

DirectoriesBehavior::getDirectory()构建HTML表单部分与<select><input>等领域。

但我怎样才能发送表单的名称/编号到我的行为?

渲染后,它看起来像

<form method="" id="myForm"> 
    <!--BEHAVIORS CONTENT--> 
    <select> 
     <option value="UserId">UserName</option> 
    </select> 

    <!--Default fields of form--> 
    <input type="text" name="myForm[exampleField]" /> 
</form> 

而且我的行为的内容应当看起来像

<select name="myForm[users]"> 
    <option>etc</option> 
</select> 
+1

您解决了这个问题?或者只是部分!请尝试把剩下的问题(问题)部分清楚的结束! – Nimir 2012-08-19 14:34:07

回答

0

我解决此问题:

我们可以送$模型_form.php这个

$form->getDirectory(array('model' => $model)); 

在DirectoriesBehavior.php

public function getDirectory(array $data) 
{ 
    $this->inputName = get_class($data['model']); 
} 

而且(为脚本,这将是这种形式的工作,我们可以发送表单的ID)

_form.php这个

$form->id;