PDA

View Full Version : آپدیت یک ستون از چند ردیف Html Helper



REZAsys
یک شنبه 05 مهر 1394, 14:40 عصر
سلام
من دارم برای بخش تنظیمات سایت Backend کد میزنم واسه این کار یه جدول به اسم tbl_setting دارم که هر ردیف یک تنظیم هست مثلا ردیف اول
setting_name = Website Name
setting_value = My Site
هست . مثلا ردیف دوم نام مدیر و بقیه موارد.
حالا میخوام توی فرم تنظیمات برای هر ردیف جدولم یه Label باشه که setting_name نشون بده و یه فیلد که بشه مقدار setting_value رو عوض کرد . این کدهایی که نوشتم مشکلم تو کد SettingController و view هست نمیدونم چطوری اون تک فیلد تو هر Row آپدیت بشه.



AdminController.php

// For Form View Of Setting Admin
public function actionSetting() {


if (Yii::$app->session['user_role'] == "Admin") {
return $this->renderAjax('setting');
} else {
return $this->redirect(Yii::$app->homeUrl . "site/index");
}
}

setting.php - view

<?php


use app\models\Setting;
use yii\helpers\Html;
$models = Setting::find()->select(['id', 'setting_name', 'setting_value'])->asArray()->all();
?>




<?php
<?=Html::beginForm(['setting/update'], 'post', ['enctype' => 'multipart/form-data'])?>
foreach ($models as $k => $v): ?>

<?=$v['setting_name']?>
<?=Html::input('text', 'setting_value', $v['setting_value'])?>
<?php endforeach;?>
<?=Html::submitButton('Submit', ['class' => 'submit'])?>
<?=Html::endForm()?>
</div><!-- admin-setting -->




SettingController.php

public function actionUpdate() {


if (Yii::$app->session['user_role'] == "Admin") {


$model = Setting::find()->all();
if ($model->load(Yii::$app->request->post())) {
if ($model->save()) {
return $this->redirect(['//admin/index', "ref_mode" => "ref_create_setting"]);
}


}


} else {
return $this->redirect(Yii::$app->homeUrl . "site/index");
}
}

REZAsys
دوشنبه 06 مهر 1394, 12:09 عصر
حل شد - حواسم نبود name ها یکی اند