Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony][1.4 Propel] Problem z formularzami w przerobionej aplikacji
Pite(R)
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 24.09.2011

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


Witam.

Przerabiam od jakiegoś czasu pewną aplikację internetową (CMS) napisaną w Symfony 1.4 tak, by mogła dodatkowo obsługiwać język angielski. Korzystam z wbudowanego i18n, przetłumaczyłem interfejs, przetłumaczyłem odpowiednie tabele (przerobiłem je tak, że w jednej tabeli zostawiłem pewne informacje, w drugiej umieściłem odpowiednie id, dodałem kolumnę 'culture' oraz kolumny z treściami), zgodnie z poradnikiem na stronie Symfony. O ile interfejs, zmiana języka i spora część treści działa fajnie, tak formularze już nie. Domyślam się, że je też należy przełożyć na i18n, ale nie mam pojęcia, od czego mógłbym w tym momencie zacząć. Gdy próbuję uruchomić przykładową podstronę z formularzem, otrzymuję błąd przy renderowaniu widoku dla modułu:

Kod
500 | Internal Server Error | InvalidArgumentException
Widget "name" does not exist.
[...]
2. at sfForm->offsetGet('name')
in SF_ROOT_DIR/apps/frontend/modules/itemAdmin/templates/itemSuccess.php line 21 ...

'name' to nazwa jednej z kolumn, które w tym formularzu są edytowane. Mógłby ktoś mnie jakoś pokierować, co powinienem przerobić, aby owe formularze jakoś ruszyły? Męczę się z tym już prawie tydzień, bez skutku. Gdyby potrzebne były dodatkowe informacje, piszcie.

EDIT: Czy może inaczej, w jaki sposób działa funkcja embedI18n()? Nigdzie nie mogę znaleźć konkretnego opisu, jak ją wykorzystać.

Pozdrawiam.

Ten post edytował Pite(R) 16.12.2012, 19:40:42
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
Kamil Adryjanek
post
Post #2





Grupa: Zarejestrowani
Postów: 16
Pomógł: 3
Dołączył: 2.02.2009

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


Aby formularze z tłumaczeniami zaczęły działać wystarczy dla każdego formularza wywołać metodę odpowiedzialną za "osadzenie" formularzy z tłumaczeniami dla poszczególnych języków:

  1. public function configure()
  2. {
  3. // ...
  4.  
  5. $this->embedI18n(array(
  6. 'pl', 'en' // lista języków dla tłumaczeń
  7. ));
  8. }
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 13:20