related-localization

    2.2.0 • Public • Published

    related-localization

    npm Travis node

    Adds support for locale table sot the related. If you store your locale data on mapping tables between the entity and a lanugage table this extension loads the locale data and puts the on the entity itself. currently read only.

    requirements

    You need to store your localized data on mapping tables if you want to use this extension.See the example below:

    event

    • id: integer

    language

    • id: integer
    • code: varchar(2)

    eventLocale

    • id_event: integer
    • id_language: integer
    • description: text
    • tite: varchar(200)

    API

    To add the extension to the orm you have to initialize the extension first.

    var   orm               = require('related')
        , ORMLocalization   = require('related-localization');
    
    
    var orm = new ORM(dbConfig);
    
    // you may set the names of the language table and 
    // the column containing the language codes
    // default is «language» and «code». The extions 
    // will apply itself to all entites which 
    // have a mapping to the language table
    var localized = new ORMLocalization({
          languageTable     : 'lang'
        , codeField         : 'name'
        , orm               : orm
    });
    
    // add the extension to the orm
    orm.use(localized);
    
    orm.on('load', readyCallback);
    

    setLocale method on the querybuilder

    if you want the locale data returned inline with the base entity you have to call the «setLocale» method.

    orm.myDatabase.event(['*']).setLocale(['en', 'nl']).limit(1).find(cb);
    
    // the result if there is an event with an english 
    // title but only with an dutch description
    {
          id: 1
        , title: 'best event ever'
        , description: 'Komende winter staat het centrum van Zwoll...'
    }
    

    if you don't want to load the locales you shold not call the «setLocale» method!

    orm.myDatabase.event(['*']).limit(1).find(cb);
    
    // no locale data ....
    {
          id: 1
    }
    

    Install

    npm i related-localization

    DownloadsWeekly Downloads

    21

    Version

    2.2.0

    License

    MIT

    Unpacked Size

    38.1 kB

    Total Files

    10

    Last publish

    Collaborators

    • ee