我不知道如何描述我的問題。首先我在CCGridview添加一個按鈕:如何從以前的Yii視圖中獲取價值
array(
'class'=>'CButtonColumn',
'template' => '{view}{update}{delete}{upload_image}',
'buttons' => array(
'upload_image' => array(
'label' => 'upload foto',
'url' => 'Yii::app()->createUrl("/image/create",
array("product_id" => $data->product_id))',
),
),
),
當我點擊它會帶我到/圖像/創建視圖具有PRODUCT_ID值。例如對gridview的我點擊記錄編號7,所以鏈接將是:
(web應用)/index.php/image/create?product_id=7
由於呈現的局部_form所以表單具有根據具有以下屬性的圖像表的屬性:id,title,filename,product_id。
所以認爲會是這樣的:
<div class="row">
<?php echo $form->labelEx($model,'title'); ?>
<?php echo $form->textField($model,'title',array('size'=>45,'maxlength'=>45)); ?>
<?php echo $form->error($model,'title'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'filename'); ?>
<?php echo $form->fileField($model,'filename',array('size'=>45,'maxlength'=>45)); ?>
<?php echo $form->error($model,'filename'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'product_id'); ?>
<?php echo $form->textField($model,'product_id'); ?>
<?php echo $form->error($model,'product_id'); ?>
</div>
<div class="row buttons">
<?php echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Save'); ?>
</div>
我的問題是,我們如何使用從我之前提到的是7(../create?product_id=7)到URL中的價值product_id屬性,而不必在提供的textField上鍵入它?
在其他的話,我會從視圖中刪除此:
<div class="row">
<?php echo $form->labelEx($model,'product_id'); ?>
<?php echo $form->textField($model,'product_id'); ?>
<?php echo $form->error($model,'product_id'); ?>
</div>
但是,當我提交表單(7)應該已經過去了/保存在的product_id字段的值。
補充: 我控制器actionCreate是
//...
public function actionCreate()
{
$dir = Yii::app()->basePath . '/../productimages/';
$uploaded = false;
$model=new Image();
if(isset($_POST['Image']))
{
$model->attributes=$_POST['Image'];
$tempSave=CUploadedFile::getInstance($model,'filename');
if($model->validate())
{
$uploaded = $tempSave->saveAs($dir.'/'.$tempSave->getName());
$this->redirect(array('/products/index'));
}
}
$this->render('index', array(
'model' => $model,
'uploaded' => $uploaded,
'dir' => $dir,
));
}
就是這樣。非常感謝..
顯示我們的控制器動作,因爲這是你需要initalize變量。 – Pentium10 2014-09-05 17:11:03
@ Pentium10在那裏我添加了我的控制器 – JoenMarz 2014-09-05 18:38:12