public function actionBatchUpdate()
{
// retrieve items to be updated in a batch mode
// assuming each item is of model class 'Item'
$items=$this->getItemsToUpdate();
if(isset($_POST['Item']))
{
$valid=true;
foreach($items as $i=>$item)
{
if(isset($_POST['Item'][$i]))
$item->attributes=$_POST['Item'][$i];
$valid=$item->validate() && $valid;
}
if($valid) // all items are valid
// ...do something here
}
// displays the view to collect tabular input
$this->render('batchUpdate',array('items'=>$items));
}
esto es la funcion dentro el controlador
public function getItemsToUpdate() {
// Create an empty list of records
$items = array();
// Iterate over each item from the submitted form
if (isset($_POST['Item']) && is_array($_POST['Item'])) {
foreach ($_POST['Item'] as $item) {
// If item id is available, read the record from database
if ( $item->id ){
$items[] = MyModel::model()->findByPk($item->id);
}
// Otherwise create a new record
else {
$items[] = new MyModel();
}
}
}
return $items;
}
esto tambien en el controlador
<div class="form">
<?php echo CHtml::beginForm(); ?>
<table>
<tr><th>Name</th><th>Price</th><th>Count</th><th>Description</th></tr>
<?php foreach($items as $i=>$item): ?>
<tr>
<td><?php echo CHtml::activeTextField($item,"[$i]name"); ?></td>
<td><?php echo CHtml::activeTextField($item,"[$i]price"); ?></td>
<td><?php echo CHtml::activeTextField($item,"[$i]count"); ?></td>
<td><?php echo CHtml::activeTextArea($item,"[$i]description"); ?></td>
</tr>
<?php endforeach; ?>
</table>
<?php echo CHtml::submitButton(‘Save’); ?>
<?php echo CHtml::endForm(); ?>
</div><!-- form -->
y por ultimo esto es de la vista llamada batchUpdate.php
esto lo encontre en un enlace el cual esta arriba loq kiero es una breve explicacion para entenderlo xfa xfa tal vez sea mucho pedir pero soy nuevo esto del framework yii