> Question: Why App.locales is better place for locales? I get it why
> Config.language is a bad place. But is App.locales because there's
> some convention I don't know about? Or maybe just Your ideaof place to
> store this stuff?
App.locales is not used by CakePHP core and just sounds reasonable/
self-explainable to me.
> Now I did sth. like this:
> ...
> Configure::write('App.locales',
> array_unique(
> array_merge(Configure::read('App.locales'),
> array(Configure::read
> ('Config.language') )
> )
> )
> );
> It's not to elegant but does what I need to be done: App.locales is an
> array for sure, firs locale in App.localse array is the same as
> Config.language (language which is current application language)
Once again: language and locale are different things and you should
not mix language and locale codes together like that. Language is 2
characters string from Configure/Session 'Config.language',
initialized by autodetection or forced by application code. Locale
identifier used by TranslateBehavior is longer, see L10n::
$__l10nCatalog (keys locale/localeFallback) and
TranslateBehavior::_getLocale().
> > In AppModel::beforeFind() would be useful to check
>
> > $this->Behaviors->attached('Translate') &&
> > $this->Behaviors->enabled('Translate')
>
> Can You tell me why I should do that?
Nothing important, just to initialize $locale property on models only
if necessary by this snippet of code. One never knows when things like
that could start biting in large applications.
> I don't think that beforeFind is a good place to set the locale field,
> because ...
> $pages = $this->ArticleVersion->ArticlePage->find('all',
> array( 'conditions' => array
> ( 'ArticlePage.article_version_id'=> $article_version_id ),
> 'order' => 'ArticlePage.id')
> );
> ArticlePage seemed to have string in a locale field and no translation
> problem occured once again.
>
> Does it have something to do with model chain?
It sounds to me like you are doing it in ArticleVersion::beforeFind()
instead of AppModel::beforeFind(), or your custom
ArticlePage::beforeFind() is not calling parent::beforeFind(). Could
you confirm that?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---