Mam widok jak na załączonym obrazku. Świetnie ładuje dane z modelu, ale przy próbie aktualizacji danych- nie robi tego- tylko wczytuje stare… Gdzie jest błąd? Czyżbym coś pominął?
Wybacz już wyjaśniam. Ładuję widok, dane ładnie załadowują się do widoku, po wyedytowaniu i potwierdzeniu submitButton’em, widok przeładowuje się ładując dane z przed edycji- w bazie oczywiście też się nic nie dzieje.
Tutaj Controller:
public function actionIndex()
{
$this->layout = 'column1';
$this->render('index',array(
'model' => $this->loadModel(),
));
}
public function loadModel($id = 1)
{
$model=Customize::model()->findByPk($id);
if ($model===null) {
throw new CHttpException(404,'The requested page does not exist.');
}
return $model;
}
Tutaj wykaz nagłówków:
YII_CSRF_TOKEN:76504f014d14ad237ffc127a0b84a8cecf816a7a
Customize[email_personal]: brak
Customize[email_managers]: brak
Customize[email_footer]: brak
Customize[urlopy_back]:3
Customize[group_vision]:0
Zapisz:
Formularz nie odpowiada za zapisywanie danych, robi to kontroler, a u ciebie po prostu nie ma obsługi przesyłanych przez formularz danych, więc nic się z nimi nie dzieje - kontroler ponownie wczytuje model z bazy i twoje zmiany przepadają. Wygeneruj sobie panel CRUD za pomocą Gii i zobacz jak tam to jest zrobione.
Nie powinno, powinieneś korzystać z $_POST['Customize'] - kluczem jest nazwa modelu, a nie id formularza. Poza tym duże znacznie mają też reguły walidacji w modelu.
Usunięcie reguł prawdopodobnie jest przyczyną tego że nie działa. Serio, poczytaj dokumentację, bo nie mając pojęcia jak działają te mechanizmy i błądząc po omacku niczego nie osiągniesz.