![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 12.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam taki popularny problem, że przeglądarka wyświetla mi źle polskie znaki. W settings.yml ustawiłem UTF-8. W templacie ustawiłem xml-lang oraz lang na pl, a charset na utf-8. Mimo to polskie znaki są źle wyświetlane. Zastosowałem pewną sztuczkę, która naprawia problem: 1. Usunąłem wszystkie tabele z bazy, zmieniłem charset dla mojej bazy poprzez ALTER ... oraz collation odpowiednio na utf8 i utf8_polish_ci. 2. Przekopiowałem schema sql do klienta mysql i w ten sposób stworzyłem tabele. Tabele odziedziczyły collation z ustawień dla bazy. 3. Wklepałem doctrine:data-load. Wszystko po takiej operacji działa perfect (IMG:style_emoticons/default/smile.gif) W momencie jednak gdy zrobię build-all --and-load wszystko wraca do poprzedniego stanu. Charset i collation dla bazy jak i samych tabel ustawiają się na domyślny dla bazy czyli jakiś latin1 swedish. Da się coś zrobić żeby Symfony używało utf-8? Częściowo rozwiązałem problem Dodałem w settings.yml Kod attributes: default_table_charset: utf8 default_table_collate: utf8_general_ci Mimo tego po każdym wykonaniu doctrine:build-all --and-load ustawienia dla bazy danych zmieniają się na domyślne dla całego systemu mysql. Sprawdzam to w INFORMATION_SCHEMA/TABLES. W sumie sprawa jest załatwiona, ale nie wiem czy dobrze ustawiać kodowanie settings.yml. Czy nie lepiej gdyby Symfony korzystało z ustawień dla bazy? Jeżeli utf8_general_ci pasuje dla innych języków? Co jeżeli jakiś Czech zechce zainstalować moje oprogramowanie? Czy nie bedzie musiał zmieniać ustawień w settings.yml? Ten post edytował SnakeEater 14.03.2010, 00:23:12 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.09.2025 - 07:47 |