I am unable to find the solution for it… When I click on save, it does not stores into the database…
Controller
public function actionCreate($mid)
{
for($i=0;$i<5;$i++){
$reviewers[$i]= new ReviewerBuffer();
}
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
if(isset($_POST['ReviewerBuffer']))
{
$valid = true;
foreach($reviewers as $i=>$review)
{
if(isset($_POST['ReviewerBuffer'][$i])){
$review->attributes=$_POST['ReviewerBuffer'][$i];
$review->manuscript_id = $mid;
$valid= $item->validate();
if($valid){
if(isset($_POST['ReviewerBuffer']['email'][$i]))
$review->save();
}
}
}
}
$this->render('create',array(
'reviewers'=>$reviewers,
));
}
View _form
<div class="form">
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'reviewer-buffer-form',
'enableAjaxValidation'=>false,
)); ?>
<p class="note">Fields with <span class="required">*</span> are required.</p>
<?php foreach($reviewers as $i=>$review): ?>
<?php echo $form->errorSummary($review); ?>
<div class="row">
<?php echo $form->labelEx($review,'[$i]email'); ?>
<?php echo $form->textField($review,'[$i]email',array('size'=>60,'maxlength'=>250)); ?>
<?php echo $form->error($review,'[$i]email'); ?>
</div>
<?php endforeach; ?>
<div class="row buttons">
<?php echo CHtml::submitButton('Save'); ?>
</div>
<?php $this->endWidget(); ?>
</div><!-- form -->