我想在视图的表单&我遵循函数…
<?php if(Yii::app()->user->hasFlash('commentSubmitted')): ?>
<div class="flash-success">
<?php echo Yii::app()->user->getFlash('commentSubmitted'); ?>
</div>
<?php else: ?>
<?php $this->renderPartial('/comment/_form',array(
'model'=>$data,
)); ?>
但是现在它显示了一个错误....'htmlspecialchars()期望参数1为字符串,给定对象'
我的'_form.php'下的'comment'是
<div class="form">
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'comment-form',
'enableAjaxValidation'=>true,
)); ?>
<p class="note">Fields with <span class="required">*</span> are required.</p>
<?php echo $form->errorSummary($model); ?>
<div class="row">
<?php echo $form->labelEx($model,'content'); ?>
<?php echo $form->textArea($model,'content',array('rows'=>6, 'cols'=>50)); ?>
<?php echo $form->error($model,'content'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'author'); ?>
<?php echo $form->textField($model,'author',array('size'=>60,'maxlength'=>128)); ?>
<?php echo $form->error($model,'author'); ?>
</div>
yii的'htmlspecialchars()期望参数1是字符串,对象给定'的问题是,我们不知道是什么导致这个错误。
我已经做了这个粗略的修改yii/web/helpers/chhtml .php:public static function encode($text)
{
if (is_object($text)){
echo __FILE__ ." ".__LINE__;
var_dump($text);
die(" This is an object, and it must be string!");
}
else
return htmlspecialchars($text,ENT_QUOTES,Yii::app()->charset);
}
至少我知道哪个对象被发送给了那个方法
哎呀,不要改变核心类。
Yii活动记录模型粘在数据库表上。出现此警告消息的一个可能原因是,您的db表不包含您试图在表单中提供的所有列。
只是猜测:)