[Catalyst] [Absolute Beginner] Navigation Q Part II i18n and URIs

Mike Raynham catalyst at mikeraynham.co.uk
Sat Aug 21 14:43:09 GMT 2010


Hi Ekki,

I'm quite new to Catalyst too, and purely out of curiosity, I have 
recently been looking into I18N.  I thought that you might find 
Catalyst::Plugin::I18N::Request useful - it might be just what you are 
after.

Regards,

Mike



Ekki Plicht (DF4OR) wrote:
> Hi Robert,
> your comments were most helpful, many thanks!
> 
> As it is so often - after sending the message I did some more thinking and 
> started to realize that my approach - starting with the controller - is 
> probably not the best way to design this app. 
> And your comments encourage me that I have to think about the model much more 
> and probably first.
> 
> What do you charge for a day of consulting? :-) It's time that I visit Hamburg 
> again...
> 
> 
> Some details from your reply:
> 
> Am Samstag 21 August 2010, 00:46:14 schrieben Sie:
>> Some things to consider:
>> · Should the user be able to override the language?
> 
> Of course.
> 
>> · Do you want to separate language by domain or URI part?
> 
> URI part or parameter, undecided.
> I have never done this until now, but I want to extract the preferred language 
> from the header, if set and if supported. If not an app wide default kicks in, 
> which the user can override later on, this override value is persistent by a 
> cookie, session racking or some such.
> 
>> What would happen if someone who only accepts DE as language requests
>> the EN page? 
> 
> Customer is king, she gets what she wants.
> 
>> Browser language detection is pretty easy with the I18N
>> plugin, but the implementation of the language logic is dependent on
>> what you want to happen.
> 
> I will look at that, tnx.
> 
>> Both the language and the article to display are variables in the
>> process of displaying the page. The language can come from a cookie, the
>> browser language setting, a query parameter, the domain name, a part of
>> the URI, or multiple of those using the first it can find.
>>
>> I'd always advise to build the actual business logic of the application
>> outside of the web front-end. 
> 
> Absolutely, that's why I decided to go with Catalyst :-)
> 
> 
>>> What I am envisioning is a central file where I (somehow, XML?,
>>> database?) maintain a navigation tree (ok, 5 or more), mapping menu
>>> entries to URIs. Some process then maps these entries to actions. But
>>> how?
>> As a model. Look at Config::Any (already used by Cat) for loading of
>> configuration files. For a database model I'd point you towards
>> DBIx::Class, but mostly because of community-size and personal
>> preference. There are other solutions, but I feel it is a good start.
> 
> Yes, I am already working through some light weight examples with DBIx::Class, 
> that's most likely the way to go.
> 
> 
> [...]
> 
> And all the rest, as I said helpful. Many thanks.
> 
> Gruß,
> Ekki
> 
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/



More information about the Catalyst mailing list