Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Symfony] W symfony 1.1 zapis danych przy 2 submit
stachuf11
post 15.11.2008, 11:15:05
Post #1





Grupa: Zarejestrowani
Postów: 154
Pomógł: 1
Dołączył: 24.04.2006

Ostrzeżenie: (0%)
-----


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

Ten post edytował stachuf11 16.11.2008, 19:50:46
Go to the top of the page
+Quote Post
-=Peter=-
post 15.11.2008, 12:04:34
Post #2





Grupa: Zarejestrowani
Postów: 304
Pomógł: 51
Dołączył: 4.02.2005
Skąd: Kraków

Ostrzeżenie: (0%)
-----


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" :]


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 06:46