Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony] W symfony 1.1 zapis danych przy 2 submit
Forum PHP.pl > Forum > PHP > Frameworki
stachuf11
witam
znów mam problem z wersją 1.1
sciągnięty sandbox1.1 postawiony na xampie 1.6.8
podłączony do mysql-a
niby wszystko jest ok,
gdy formualrze pobudowane metodą z symfony 1.0 to działają
gdy zainicjowane to tez jest ok,
, a jak wygenerowane komendą
symfony propel:generate-crud backend aktywny Aktywny
to przy co drugim tworzeniu rekordu nie zapisuje danych, trzeba wpisac drugi raz dane w pola i wtedy zapisze
czy ktos sie spotkal z takim dziwnym problemem?
na symfony 1.1?


żeby nie męczyć się i czytać do końca rozwiązanie umieszczam tutaj

No i znalazłem odpowiedz, chociaż nie wiem czemu tak się dzieje to
gdy używamy bazy MySql, i chcemy korzystać z formularzy z symfony 1.1, to trzeba mieć ustawione w pliku
databases.yml


  1. <?php
  2. persistent: false
  3. ?>




lub wogole nie definiować tego ustawienia, domyślnie jest na false

gdy persistent jest ustawione na true, to problem taki, jak w tytule wątku,
dotyczy to bazy mysql, z bazą np Microsoftu MsSQL ustawienie na true tego parametru nie powoduje tego problemu, wiadomo że chodzi tu o stałe połączenia
może ktoś podpowie dlaczego tak się dzieje
pozdrawiam
Stachu













ewidentnie widać, że nie zawsze działa u mnie metoda
$this->form->save();
bo sprawdziłem, parametry z requesta dochodzą, proces walidacji jest poprawny

co za to moze być odpowiedzialne?
formualrze w lib/symfony forms/

  1. <?php
  2. class BaseGlownebranrzeForm extends BaseFormPropel
  3. {
  4.  public function setup()
  5.  {
  6.    $this->setWidgets(array(
  7.      'id'      => new sfWidgetFormInputHidden(),
  8.      'nazwawl' => new sfWidgetFormInput(),
  9.    ));
  10.  
  11.    $this->setValidators(array(
  12.      'id'      => new sfValidatorPropelChoice(array('model' => 'Glownebranrze', 'column' => 'id', 'required' => false)),
  13.      'nazwawl' => new sfValidatorString(array('max_length' => 20, 'required' => false)),
  14.    ));
  15.  
  16.    $this->widgetSchema->setNameFormat('glownebranrze[%s]');
  17.  
  18.    $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
  19.  
  20.    parent::setup();
  21.  }
  22.  
  23.  public function getModelName()
  24.  {
  25.    return 'Glownebranrze';
  26.  }
  27.  
  28. }
  29. ?>


standard, wiec tu nie ma co szukac przyczyny
-=Peter=-
A może pokazałbyś metodę akcji obsługującej ten formularz? Nikt jasnowidzem nie jest...

PS. Jak używasz polskich nazw w nazwach klas, metod to przynajmniej pisz według norm językowych, bo ja nie znam takiego słowa jak "branrza" :]
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.