【发布时间】:2014-06-09 04:58:55
【问题描述】:
我在 Yii 中处理一个简单的表单。我之前能够访问模型属性值。
但现在我不能,因为它显示空白/null。
我不知道是什么问题以及如何解决。任何帮助将不胜感激。 谢谢。
这是表单代码。
<div class="span4">
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'testform',
'enableClientValidation'=>true,
'clientOptions'=>array(
'validateOnSubmit'=>true,
),
)); ?>
<p class="note">Fields with <span class="required">*</span> are required.</p>
<div class="row">
<?php echo $form->labelEx($model,'sample'); ?>
<?php echo $form->textField($model,'sample'); ?>
<?php echo $form->error($model,'sample'); ?>
</div>
<div class="row buttons">
<?php echo CHtml::submitButton('Login'); ?>
</div>
<?php $this->endWidget(); ?>
</div>
这是模型的代码:
class Questions extends CActiveRecord
{
public $sample;
public function tableName()
{
return 'questions';
}
/**
* @return array customized attribute labels (name=>label)
*/
public function attributeLabels()
{
return array(
'queid' => 'Queid',
'question' => 'Question',
'sample'=>'sample textfield',
);
}
public static function model($className=__CLASS__)
{
return parent::model($className);
}
public function getInput()
{
$data = $this->sample;
echo "<script>alert('testing input'".$this->sample."')</script>";
echo $this->sample;
return $data;
}
}
这是该页面的控制器代码:
public function actiontest()
{
$model = new Questions();
$data = "";
if(isset($_POST["Questions"]))
{
$data = $model->getInput();
}
$this->render('test',array('model'=>$model,'data'=>$data));
}
【问题讨论】:
-
$model = new Questions();你做了一个新模型,它的属性可能没有预定义 -
我应该如何以及在哪里定义它们?
-
如果你已经保存了,也许加载它?!
标签: php yii model frameworks