Codeigniter help machanla

GT9

Well-known member
  • Jun 22, 2013
    1,564
    167
    63
    [email protected]
    මචංල ලොකු ගැටලුවක මචං මම වැටිල ඉන්නේ දැන් අදට දවස් දෙකයි මේ කලින් කරපු project එකක් Localize කරන්න වෙලා. මම මචංල documentation එක followup කරා නමුත් මචං ඒකේතියෙන විදියට කරාට වැඩ කරන්නෑ.

    මේකයි ගැටුලව.

    මම application folder එක ඇතුලේ tamil, sinhala, english කියල folder 3ක් හදල මගේ main lang file එක ඇතුලුව date_lang, form_validation_lang වගේ codeigniter වල system/language/english folder එකේ තියෙන default lang ෆයිලුත් කොපි කරල දාල ඒව ඒ ඒ භාෂාවට හැරෙව්ව.

    මචංල මෙතනදි තමයි කේස් එක වෙන්නේ. මම language switch වෙන්නේ. session එකකින්. construct එකේදි තමයි ලෝඩ් කරන්නේ මෙන්න මෙහෙම.

    PHP:
    $this->lang->load(array('main', 'calendar', 'date'), $this->helper->sys_lang());

    ඔන්න ඔය වගේ. ඒත් මචංල මෙහෙම කරාම main ෆයිල් එක switch වෙනව අවුලක්නැතුව. ඒත් මචංල calendar, date, form_validation වගේ ඒව switch වෙන්නෑ. ඒව ගන්නේ config.php එකේ සෙට් කරල තියෙන default language එකේ තියෙන ෆයිල්.

    උදා:

    හැම තිස්සෙම language switch උනත්

    calendar_lang.php, date_lang.php ඒව ලෝඩ් වෙන්නේ මෙහෙමයි.

    application/language/english/calendar_lang.php

    ඒත් මට ඕන මේක මෙහෙම වෙන්න.

    හිතන්න මම tamil වලට switch උනා කියල

    application/language/tamil/calendar_lang.php

    මම මචංල මෙහෙම ට්‍රයි කරල බැලුව. එතකොට වැඩ.

    PHP:
    $this->config->set_item('language', $this->helper->sys_lang());

    ඒත් මචංල documentation එකේ කියල තියෙන විදියට කලින් විදියත් වැඩ කරන්න ඕන නේද? ඒ ක්‍රමෙන් වැඩ කරනනේ මම හදපු custom lang files විතරයි, default ci lang files switch වෙන්නෑ. :)

    මචංල මට මේක ගොඩ දාගන්න උදව් කරන්න. තව දවස් 3යි තියෙන්නේ. එපා වෙලා ඉන්නේ. තව වෙනස්කම් කීපයකුත් කරනන තියෙනව.
     
    Last edited:

    GT9

    Well-known member
  • Jun 22, 2013
    1,564
    167
    63
    [email protected]
    man den kanava okata utharayak dennam passe...kolla nala vage :P

    තෑනක්ස් මචං. හිතා ගන්න බෑ මොකක් කියල. හරිනම්වැඩ කරනන ඕන.

    PHP:
    $this->lang->load('date', 'tamil');

    මෙහෙම කරාම load වෙන්නේ මචං application/language/english/date_lang.php එක ඒ කියන්නේ default language එක config.php file එකේ සෙට් කරල තියෙන ඒත් හරිනම් ලෝඩ් වෙන්න ඕන application/language/tamil/date_lang.php එක.

    documentation එකෙ තියෙන විදියට නම් වැඩ කරන්න ඕන.
    7a48bb788b6b471bbebf1bde008ff98b.png



    මම මෙහෙම කරල construct එකේදි defualt language එක override කරා එතකොට වැඩ. ඒත් මට තියෙන අවුල හරම වැඩ නොකරන්නේ ඇයි කියන එක. මම කැමති නෑ මචං hacks වලින් අටවන්න. එකයි ලොකුම අවුල.

    PHP:
    $this->config->set_item('language', 'tamil');

    ඔහොම කරාම වැඩ. ඒත් මට අවුල හරම වැඩ නැත්තේ ඇයිද කියන එක.මචං.
     

    Barry Allen

    Member
    Oct 15, 2016
    2,855
    139
    0
    Central City
    config eka load venava session ekata kalin,ekayi oya veda karanna naththe....

    language karanne nam mehemayi...

    me link eken yanna

    https://github.com/bcit-ci/codeigniter3-translations

    ganna oya zip folder eka...oke tiyenava kattiya karapu translate..Tamil valata nam tiyenava..sinhala valata nahe (uba nam okata join vela sinahala eka karapan,ube namath vetevi list eke :D )

    den application/language ekata oke aethule tiyena tamil folder eka copy karala ganna...

    sinhala folder ekak hadala system\language\english eke tiyena tika aran copy karala danna..e tika translate karanna...

    English eka translate karanne mokatada,denatama karalane tiyenne..e nisa English translate karanna ona nahe

    english custom translate enava nam denata tiyena evata amathava folder ekak hadanna english kiyala

    me vidiyata load kara nam veda karavi :p

    $this->lang->load('main','tamil');
    $this->lang->load('calendar','tamil');
    $this->lang->load('date','tamil');

    language switch karana lesi vidiyak tiyenava hooks use karala...net eke balanna aethi
     
    • Like
    Reactions: Rhaegar Targaryen

    GT9

    Well-known member
  • Jun 22, 2013
    1,564
    167
    63
    [email protected]
    config eka load venava session ekata kalin,ekayi oya veda karanna naththe....

    language karanne nam mehemayi...

    me link eken yanna

    https://github.com/bcit-ci/codeigniter3-translations

    ganna oya zip folder eka...oke tiyenava kattiya karapu translate..Tamil valata nam tiyenava..sinhala valata nahe (uba nam okata join vela sinahala eka karapan,ube namath vetevi list eke :D )

    den application/language ekata oke aethule tiyena tamil folder eka copy karala ganna...

    sinhala folder ekak hadala system\language\english eke tiyena tika aran copy karala danna..e tika translate karanna...

    English eka translate karanne mokatada,denatama karalane tiyenne..e nisa English translate karanna ona nahe

    english custom translate enava nam denata tiyena evata amathava folder ekak hadanna english kiyala

    me vidiyata load kara nam veda karavi :p

    $this->lang->load('main','tamil');
    $this->lang->load('calendar','tamil');
    $this->lang->load('date','tamil');

    language switch karana lesi vidiyak tiyenava hooks use karala...net eke balanna aethi

    config files කලින් ලෝඩ් වෙනව තමයි මචං ඒත්
    Code:
    $this->lang->load('filename', 'language');
    ඔය මෙතඩ් එකේ 2nd parameter එක සෙට් වෙලා නම් සහ ඒකට අදාල dir එක තියෙනවනම් අනිවාර්යෙන්ම lang switch වෙන්න ඕන.

    මේක custom file වලට වැඩ core lang ෆයිල් වලට විතරයි වැඩ නැත්තේ.

    $this->lang->load('main','tamil');
    $this->lang->load('calendar','tamil');
    $this->lang->load('date','tamil');

    මේ විදියට කරාම වැඩ කරන්න ඕන ඒත් වැඩ නෑ. ඒක තමයි මචං මම කියල තියෙන්නේ. මේක හෙන strange issue එකක්. එකම ක්‍රමය override කරන එක default lang එක. ඒත් මචං මම මේ වගේ හැක්ස් වලට ආස නෑ. තනිකරම dirty ගතියක් දැනෙන්නේ. :)
     
    Last edited:

    GT9

    Well-known member
  • Jun 22, 2013
    1,564
    167
    63
    [email protected]
    onna oka karapan ban..oka veradi vedak nevi..hoda vedak..mona hacks da

    ඔව විදිය වැඩ මචං. ඒත් අර විදිය වැඩ කරන්න ඕන. මට හිතෙන්නේ මේක framework issue එකක් වගේ.


    හැමෝටම තෑන්ක්ස්. :)