[font="Tahoma"][rtl][right]سلام
views/post/create.php
[/right][/rtl]
<h2> Create Post View </h2>
<div class="form">
<?php $form=$this->beginWidget('CActiveForm'); ?>
<?php //echo $form->errorSummary($model); ?>
<div class="row">
<?php echo $form->label($model,'title'); ?>
<?php echo $form->textField($model,'title') ?>
</div>
<div class="row">
<?php echo $form->label($model,'content'); ?>
<?php
$this->widget('application.extensions.cleditor.ECLEditor', array(
'model'=>$model,
'attribute'=>'content', //Model attribute name. Nome do atributo do modelo.
'options'=>array(
'width'=>'600',
'height'=>250,
'useCSS'=>true,
),
'value'=>$model->content, //If you want pass a value for the widget. I think you will. Se você precisar passar um valor para o gadget. Eu acho ir?.
));
?>
</div>
<div class="row">
<?php echo $form->label($model,'permission'); ?>
<?php echo $form->textField($model,'permission') ?>
</div>
<div class="row buttons">
<?php
echo CHtml::ajaxSubmitButton(
($model->isNewRecord ? 'Create' : 'Save'),
($model->isNewRecord ? array('post/addPost') : array('post/update') ),
//array('post/addPost'),
array(
'update'=>'#req_res02',
)
);
?>
</div>
<?php $this->endWidget(); ?>
<div id="req_res02">...</div>
</div>
[rtl][right]
خوب من تو این صفحه برای ajaxSubmitButtom تعریف کردم که اگر isNewRecord بود post/addPost را اجرا کن در غیر این صورت post/update
خوب حالا من یک صفحه update.php ساختم و کد زیر رو داخلش گذاشتم
[/right][/rtl]
<?php
$this->breadcrumbs=array(
$this->module->id,
);
?>
<?php echo $this->renderPartial('create', array('model'=>$model)); ?>
و این هم actionUpdate
public function actionUpdate()
{
$model=$this->loadModel();
if(isset($_POST['post']))
{
$model->attributes=$_POST['post'];
if($model->save())
{
echo "<h2> Post is Updated ! </h2>";
}
}
$this->render('update',array('model'=>$model));
}
public function loadModel()
{
if($model===null)
{
if(isset($_GET['id']))
{
if(Yii::app()->user->isGuest)
$condition='status='.Post::STATUS_PUBLISHED.' OR status='.Post::STATUS_ARCHIVED;
else
$condition='';
$model=Post::model()->findByPk($_GET['id'], $condition);
}
if($model===null)
throw new CHttpException(404,'The requested page does not exist.');
}
return $model;
}
[rtl][right]
ولی کد update کردن اون پستی که انتخاب شده انجام نمیشه
یعنی وقتی رو save کلیک میکنیم تا اکشن update رو اجرا کنه هیچ خروجی نمیگیرم
حتی من print_r($_POST) گرفتم اما جواب نداد
ممنون میشم راهنمایی کنید[/right][/font][/rtl]