You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Chtěl jsem ti jednak poděkovat za LiveTranslátor, je to super věc, ale ač nerad, objevil jsem jeden bug.
Teď na novém projektu ho využíváme a máme tam Nette 2.2.2 a tvůj LiveTrasnlátor 1.0.0-RC.
Chyba nastává, když překládáme text delší než ~700 znaků (nevím úplně přesně). Pak mi to vrátí 101:ERR_CONNECTION_RESET.
Jenom jsem ti o tom chtěl říct, abys o tom věděl. Samozřejmě není problém ten řetězec rozdělit.
Tak ti přeji pěkný den.
Michal Odcházel, jednatel
Litea Solution s.r.o.
777030589
The text was updated successfully, but these errors were encountered:
Při použití datábáze a dodaného skriptu (NetteDatabase.createTable.namespaced.sql) je problém už u textů delších než 255 znaků. Na vině je sloupec localization.translation a jeho maximální délka. Osobně jsem to vyřešil změnou z varchar na text
Na vině je kromě sloupce localization.translation také sloupec localization_text.text - stejně jako petrickkusebauch jsem oba sloupce změnil na text, pak ale přijde problém s UNIQUE indexem v tabulce localization_text. Vytvořil jsem tedy další sloupec localization_text.hash, kde se ukládá md5 hash ze sloupců localization_text.ns a localization_text.text. Na tento sloupec jsem pak nastavil UNIQUE index.
Pro vytváření md5 hashe jsem si v DB vytvořil triggery
Tabulka pak vypadá asi takhle:
CREATETABLE `localization_text` (
`id`int(1) UNSIGNED NOT NULL AUTO_INCREMENT,
`ns`varchar(24) NULL,
`text`textNOT NULL,
`hash`varchar(32) NOT NULL,
`ts`timestampNOT NULL DEFAULT CURRENT_TIMESTAMPONUPDATECURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE (`hash`)
) ENGINE=InnoDB CHARSET=utf8 COLLATE=utf8_bin COMMENT='default texts for translations';
DELIMITER ;;
CREATETRIGGER `LocalizationTextInsertHash` BEFORE INSERT ON`localization_text` FOR EACH ROW
SETNEW.hash= MD5(CONCAT(NEW.ns, NEW.text));;
CREATETRIGGER `LocalizationTextUpdateHash` BEFORE UPDATEON`localization_text` FOR EACH ROW
SETNEW.hash= MD5(CONCAT(NEW.ns, NEW.text));;
DELIMITER ;
Ahoj,
doufám že ti nevadí že ti rovnou tykám, ale jsem nettař z neťácký komunity, tak snad to nevadí, kdyby jo, řekni si.
via [email protected]
Chtěl jsem ti jednak poděkovat za LiveTranslátor, je to super věc, ale ač nerad, objevil jsem jeden bug.
Teď na novém projektu ho využíváme a máme tam Nette 2.2.2 a tvůj LiveTrasnlátor 1.0.0-RC.
Chyba nastává, když překládáme text delší než ~700 znaků (nevím úplně přesně). Pak mi to vrátí 101:ERR_CONNECTION_RESET.
Jenom jsem ti o tom chtěl říct, abys o tom věděl. Samozřejmě není problém ten řetězec rozdělit.
Tak ti přeji pěkný den.
Michal Odcházel, jednatel
Litea Solution s.r.o.
777030589
The text was updated successfully, but these errors were encountered: