smazat cach pro KdybyTranslation

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
vosy
Člen | 532
+
0
-

Ahoj, pouzivat KdybyTranslation.
mam cs a en verzi cs funguje dobre ale kdyz se prehodim na EN verzi tak se texty nechteji nacist z app/lang

zobrazi se pouze: „header.inventory“

zapis v ms.en_US.neoun

header:
    home: Home
    inventory: Inventory
    payment-terms: Payment terms
    about-us: About us
    contacts: Contacts

v template mam: {ms.header.inventory}

a promena $locale obsahuje spravne „en“

vubec netusim kde by mohla byt chybka, v error logu nic nemam :(

kdyz pridam jakoukoliv jinou jazykovou mutaci ru nebo de tak to funguje korektne.

Editoval vosy (3. 9. 2014 9:37)

iguana007
Člen | 970
+
0
-

Máš špatně příponu souboru nebo je to jen překlep tady na fóru?

ms.en_US.neoun vs. ms.en_US.neon

Editoval iguana007 (3. 9. 2014 10:34)

vosy
Člen | 532
+
0
-

to byl preklep tady na foru :(

Filip Procházka
Moderator | 4668
+
0
-

Screenshot panelu by pomohl. A obsah tvého configu, kde nastavuješ translator by pomohl.

vosy
Člen | 532
+
0
-

config.neon

#
# SECURITY WARNING: it is CRITICAL that this file & directory are NOT accessible directly via a web browser!
#
# If you don't protect this directory from direct web access, anybody will be able to see your passwords.
# https://nette.org/en/security-warning
#
common:
	parameters:


	php:
		date.timezone: Europe/Prague
		# zlib.output_compression: yes


	nette:
		application:
			errorPresenter: Error
			mapping:
				*: App\*Module\Presenters\*Presenter

		session:
			expiration: 14 days


	extensions:
		translation: Kdyby\Translation\DI\TranslationExtension

	services:
		- Vosy\MyDb

		- App\UrlTransform

		- App\Model\CurrencyRepository


		- App\RouterFactory
		router: @App\RouterFactory::createRouter

	translation:
		default: en
		whitelist: [en, cs] #....
		fallback: [en_US, en]
		debugger: on
		resolvers:
			session: on

Presenter

<?php

namespace App\Presenters;


use \Nette\Http\Url;
/**
 * Base presenter for all application presenters.
 */
abstract class BasePresenter extends \Nette\Application\UI\Presenter
{
    /** @persistent */
    public $currency;


    /** @persistent */
    public $locale;


    /** @var \Kdyby\Translation\Translator */
    public $translator;

    /**
     * @var \Kdyby\Translation\LocaleResolver\SessionResolver
     * @autowire
     */
    protected $translatorSession;



    public function injectTranslator(\Kdyby\Translation\Translator $translator)
    {
        $this->translator = $translator;
    }

    protected function createTemplate($class = NULL)
    {

        $template = parent::createTemplate($class);

        $template->registerHelperLoader(callback($this->translator->createTemplateHelpers(), 'loader'));

        return $template;
    }

Router

$frontRouter[] = new Route('[<locale en|cs>_<currency czk|eur|usd>/]<presenter>/<action>/<id>',
			array(
				'locale' => 'en',
				'currency' => 'eur',
				'presenter'=>'Homepage',
				'action'=>'default',
				'id'=>NULL,
				));

screen

Editoval vosy (3. 9. 2014 12:55)

vosy
Člen | 532
+
0
-

Gde je SessionResolver?

Quinix
Člen | 108
+
0
-

Proč máš zapnutý session resolver a zároveň parametr v routě (a URL)?

vosy
Člen | 532
+
0
-

takze z

translation:
        default: en

smazat default: en

???

translation:
		whitelist: [en, cs] #....
		fallback: [en_US, en]
		debugger: on
		resolvers:
			session: on

problem pretrvava :(

Editoval vosy (3. 9. 2014 14:07)

iguana007
Člen | 970
+
0
-

Spíš smaž ten řádek o session v configu, když locale předáváš v requestu (route/url).

vosy
Člen | 532
+
0
-
	translation:
		whitelist: [en, cs] #....
		fallback: [en_US, en]
		debugger: on

screen

ono to jazyk rozpozna dobre, ze to je EN to stranka vi, ale nepreda mi data z ms.en_US.neon

vosy
Člen | 532
+
0
-

pritup k souborum je stejny a i prava souboru

-rw-r--r--   1 vosy  admin   277B Sep  3 12:46 ms.cs_CZ.neon
-rw-r--r--   1 vosy  admin   275B Sep  3 12:45 ms.en_US.neon
vosy
Člen | 532
+
0
-

ale jak jsem rikal kzdy pridam dalsi jazyk, treba RU a DE tak ty fungujou dobre.
:(

Filip Procházka
Moderator | 4668
+
0
-

V tom screenu je vidět, že se ti nenačetly žádné slovníky, jenom hlásí že se pokoušíš přeložit něco co neumí. Tedy problém hledej v načítání slovníků.

V jaké je máš složce? Určitě jsou v app/lang? smazal jsi celou temp/cache ?

Mysteria
Člen | 797
+
0
-

Máš ten slovník validní? Vím, že jednou se mi podařilo jej nějak narušit, že ho to nenačetlo, ale ani to nehodilo takovou tu hlášku, že je tam problém s rozparsováním.

vosy
Člen | 532
+
0
-

ano jsou v app/lang a ano nekolikrat jsem smazal temp/cache

Filip Procházka
Moderator | 4668
+
0
-

Zkus jestli ti ho načte http://ne-on.org/

vosy
Člen | 532
+
0
-

vypada to ze ano:

array (2)
header => array (5)
home => "Home" (4)
inventory => "Inventory" (9)
"payment-terms" => "Payment terms" (13)
"about-us" => "About us" (8)
contacts => "Contacts" (8)
footer => array (2)
designedBy => "Designed by Vosy.cz" (19)
allRights => "© 2014 DUTY FREE SLOVAKIA spol. s r.o.. All&nbsp;Rights&nbsp;Reserved. Designed&nbsp;by" (88)

zkousel jsem i prez composer znova nainstalovat kdyby/translation
ale stale stejny problem