Siirry sisältöön

Käännetyt Kentät Odoossa: Täydellinen Opas

Opi, kuinka Odoo käännetyt kentät tallentavat monikielisiä tietoja ORM:ssä ja kuinka voit käyttää niitä tehokkaasti liiketoiminnassasi
6. maaliskuuta 2026 kirjoittanut
Käännetyt Kentät Odoossa: Täydellinen Opas
Dasolo
| Ei vielä kommentteja

Monet Odoo-implementoinnit palvelevat käyttäjiä tai asiakkaita useammassa kuin yhdessä kielessä. Ranskalainen myyntitiimi, saksalainen varasto, espanjalainen asiakasportaali. Jotta kaikki tämä toimisi saumattomasti, Odoon on pystyttävä tallentamaan kenttäarvot useilla kielillä samanaikaisesti. Juuri tätä käännetyt kentät tekevät.


Käännetty kenttä pitää sisällään yhden arvon per kieli. Kun ranskalainen käyttäjä avaa tuotetietueen, hän näkee ranskankielisen tuotteen nimen. Kun saksalainen käyttäjä avaa saman tietueen, hän näkee saksankielisen nimen. Yksi tietue tietokannassa, useita esityksiä riippuen siitä, kuka katsoo.

Tämä opas selittää, kuinka käännetyt kentät toimivat Odoon ORM:ssä, kuinka niitä luodaan ja hallitaan sekä käytännön tilanteet, joissa niillä on todellinen vaikutus liiketoimintasi toimintaan.

Mikä on käännetty kenttä Odoossa


Käännetty kenttä on tekstipohjainen kenttä Odoon tietomallissa, joka voi tallentaa eri arvon jokaiselle aktiiviselle kielelle järjestelmässä. Käännös on käyttäjälle läpinäkyvä: he näkevät aina arvon omalla kielellään ilman, että heidän tarvitsee tehdä mitään erityistä.


Odoon kenttätyyppien osalta käännös on tuettu seuraavissa:

  • Char: lyhyt yksirivinen teksti (tuotenimet, kategorian nimet, työtehtävät)
  • Text: pidempi monirivinen teksti (kuvaukset, muistiinpanot)
  • Html: rikastettu teksti HTML-merkinnöillä (verkkosivuston sisältö, sähköpostimallin rungot)

Numerokenttiä, päivämääräkenttiä, Many2one-kenttiä ja boolean-kenttiä ei voida kääntää. Käännös koskee vain kenttiä, jotka sisältävät ihmisten luettavissa olevaa tekstiä.


Miltä se näyttää käyttöliittymässä

Kun käännetty kenttä on aktiivinen Odoossa, pieni kielilippuikoni ilmestyy kentän viereen muokkaustilassa. Klikkaamalla sitä avautuu dialogi, joka näyttää arvon jokaiselle asennetulle kielelle, jolloin valtuutetut käyttäjät voivat hallita kaikkia käännöksiä yhdestä paikasta.


Lukutilassa käyttäjä näkee yksinkertaisesti arvon omalla kielellään. Jos heidän kielelleen ei ole vielä asetettu käännöstä, Odoo palautuu peruskielen arvoon (yleensä englantiin) sen sijaan, että näyttäisi tyhjää kenttää.

Kuinka käännetty kenttä toimii


Käännettyjen kenttien sisäisten toimintojen ymmärtäminen auttaa sinua tekemään parempia päätöksiä siitä, milloin niitä käytetään ja kuinka niitä hallitaan suuressa mittakaavassa.


Käännös=True-parametri

Odoo ORM:ssä voit ottaa käännöksen käyttöön kentässä lisäämällä translate=True kenttäkuvaukseen. Tässä on yksinkertainen esimerkki mukautetusta Char-kentästä:

from odoo import models, fields

class ProductTemplate(models.Model):
    _inherit = 'product.template'

    x_marketing_tagline = fields.Char(
        string='Markkinointilause',
        translate=True
    )

Tämän yksinkertaisen parametrin avulla Odoo tietää tallentaa ja noutaa erilaisia arvoja tälle kentälle aktiivisen kielikontekstin mukaan. Tämä on yksi Odoo-kehyksen elegantimmista ominaisuuksista.


Missä käännökset säilytetään

Tallennusmekanismi on muuttunut Odoo-versioiden myötä:

  • Odoo 15 ja aikaisemmat: Käännökset tallennettiin erilliseen ir.translation -tauluun. Jokainen käännetty arvo oli rivi tässä taulussa, joka oli linkitetty malliin, kentän nimeen, tietueen ID:hen ja kielikoodiin.
  • Odoo 16 ja myöhemmät: Käännökset tallennetaan suoraan mallin omaan tietokantatauluun JSONB-sarakkeena. Esimerkiksi name -kenttä, jossa on translate=True, tallennetaan JSON-objektina, kuten {"en_US": "Laptop Stand", "fr_FR": "Support pour ordinateur portable", "de_DE": "Laptopständer"}.

Siirtyminen JSONB:hen Odoo 16:ssa oli merkittävä parannus. Se poistaa kalliit liitokset käännöstauluun ja tekee kyselyistä paljon nopeampia, erityisesti malleilla, joissa on paljon tietueita.


Kuinka kielikonteksti toimii

Kun Odoo lukee käännettyä kenttää, se tarkistaa aktiivisen kielen kontekstissa. Jos olet kirjautuneena ranskankielisenä käyttäjänä, ORM noutaa automaattisesti ranskankielisen arvon. Jos teet API-kutsun, voit hallita kieltä välittämällä sen kontekstissa:

models.execute_kw(
    ODOO_DB, uid, ODOO_API_KEY,
    'product.template', 'read',
    [[product_id]],
    {'fields': ['name'], 'context': {'lang': 'fr_FR'}}
)

Tämä on tärkeää integraatioita tai vientiskriptejä rakennettaessa. Varmista aina, että välität oikean kielen kontekstissa saadaksesi oikean käännetyn arvon.


Translate-parametri kutsuttavana

Parametri translate hyväksyy myös kutsuttavan edistyneitä käyttötapauksia varten. Yleisin esimerkki on käyttää translate=_ merkitsemään staattisia merkkijonoarvoja (kuten valintaleimoja) käännettäväksi Odoo:n standardin käännöksen vientimekanismin kautta. Tämä on erilaista kuin tietuekohtaiset kenttäkäännökset ja sitä käytetään pääasiassa Odoo-kehityksessä moduulimerkkien kääntämiseen.


Varakäyttäytyminen

Jos aktiiviselle kielelle ei ole asetettu käännöstä, Odoo ei palauta tyhjää arvoa. Se palautuu tietokannan peruskieleen (yleensä englantiin). Tämä sujuva palautuminen tarkoittaa, että käyttäjäsi näkevät aina jotain merkityksellistä, jopa osittain käännetyissä ympäristöissä.

Liiketoimintakäyttötapaukset


Käännetyt kentät eivät ole vain tekninen ominaisuus. Ne ratkaisevat todellisia ongelmia, jotka ilmenevät liiketoiminnassa, joka toimii eri kielillä. Tässä on viisi yleistä skenaariota.


1. Verkkokauppa: Monikieliset tuotenimet ja -kuvaukset

Jos myyt Odoo-verkkosivuston tai -kaupan kautta, asiakkaasi odottavat selaavansa omalla kielellään. name ja description kentät product.template -mallissa ovat oletusarvoisesti käännettäviä. Tämä tarkoittaa, että voit ylläpitää yhtä tuotekatalogia ja tarjota paikallisia nimiä, myyntipuheita ja teknisiä erittelyjä ilman, että sinun tarvitsee monistaa tietueita.

Ranskalainen asiakas, joka vierailee verkkosivustollasi, näkee ranskalaiset tuotenimet ja ranskalaiset kuvaukset. Taustalla oleva tuote on sama, varastotasot ovat samat, hinnoittelusäännöt ovat samat. Vain näytettävä teksti muuttuu.


2. Sähköpostimallit monikielisissä yrityksissä

Odoon sähköpostimallit käyttävät käännettyjä Html-kenttiä sisällön runko-osassa. Kun lähetät tilausvahvistuksen saksalaiselle asiakkaalle, Odoo käyttää automaattisesti mallin saksankielistä versiota, jos sellainen on asetettu. Tämä toimii, koska mallin kentillä on translate=True.


Monissa maissa asiakkaita palveleville yrityksille tämä tarkoittaa, että yksi malli voi palvella kaikkia markkinoita siististi ilman ehtologiiikkaa tai erillisiä mallitietueita kieleittäin.


3. Verkkosivuston sivut ja blogisisältö

Odoon verkkosivuston sivut käyttävät käännettäviä Html-kenttiä sisällölleen. Kun verkkosivustollasi on aktivoitu useita kieliä, toimittajat voivat ylläpitää eri tekstiä jokaiselle kielen versiolle samasta sivusta. Näin monikieliset Odoo-verkkosivustot toimivat natiivisti ilman kolmannen osapuolen liitännäisiä.


SEO-näkökulmasta tämä tarkoittaa myös, että jokaisella kieliversiolla sivusta voi olla oma metaotsikkonsa ja meta-kuvauksensa, mikä auttaa sinua sijoittumaan paikallisissa hakutuloksissa eri markkinoilla.


4. Valintakenttien etiketit kansainvälisille tiimeille

Kun määrittelet Valinta-kentän Odoo Python -koodissa, vaihtoehtojen nimilaput voidaan merkitä käännettäväksi käyttämällä standardia _ käännöstoimintoa. Tämä tarkoittaa, että avattavassa valikossa, joka näyttää "Käynnissä", "Pysäytetty" ja "Valmis" englanninkieliselle käyttäjälle, näkyvät oikein käännetyt vastineet muilla kielillä oleville käyttäjille.


Tämä on erityisen hyödyllistä henkilöstöhallinnassa, projektinhallinnassa ja kaikissa työnkuluissa, joissa eri toimistojen tiimien on työskenneltävä samojen tietueiden parissa omalla kielellään.


5. Mukautetut kentät monikielisessä raportoinnissa

Jos olet luonut mukautettuja kenttiä Odoo-kustomoinnin tai Odoo Studio -kenttien avulla sisäistä luokittelua varten (palvelukategoriat, riskitasot, tuotesegmentit), näiden kenttien käännettävyyden varmistaminen takaa, että raportit ja hallintapaneelit näyttävät oikein kaikille käyttäjille kieliasetuksista riippumatta.


Ilman käännöstä näissä kentissä ranskalainen käyttäjä saattaa nähdä englanninkielisiä nimilappuja raporteissaan, mikä aiheuttaa hämmennystä ja vähentää käyttöönottoa.

Käännettyjen kenttien luominen tai mukauttaminen


Odoossa on muutamia tapoja luoda tai mahdollistaa käännös kentälle, riippuen siitä, työskenteletkö koodittomassa ympäristössä vai suoraan Pythonissa.


Käyttäen Pythonia (suositellaan kehittäjille)

Siistein tapa luoda käännetty kenttä Odoo ORM:ssä on määritellä se Python-mallissa translate=True -asetuksella. Tämä on standardimenetelmä kaikissa Odoo-kehittäjän oppaissa tai Odoo-teknisissä tutoriaaleissa:


from odoo import models, fields

class ProductTemplate(models.Model):
    _inherit = 'product.template'

    x_product_highlight = fields.Char(
        string='Tuotteen korostus',
        translate=True
    )

    x_product_note = fields.Html(
        string='Tuotteen huomautus',
        translate=True
    )

Lisääminen translate=True riittää. Siitä eteenpäin Odoo hoitaa kaiken: kielilipun käyttöliittymässä, käännösten tallennuksen, varakäytännön.


Käyttäen Odoo Studio -kenttiä

Odoo Studio ei tarjoa translate -vaihtoehtoa kenttäkonfiguraatiopaneelissaan. Kun luot Char- tai Text-kentän Studiolla, se ei ole oletuksena käännettävissä.


Voit kuitenkin ottaa käännöksen käyttöön Studio-kentässä XML-RPC API:n kautta sen luomisen jälkeen. Etsi kentän ID ir.model.fields -taulusta ja päivitä sen translate -ominaisuus:


# Etsi Studio-kenttä
field = models.execute_kw(
    ODOO_DB, uid, ODOO_API_KEY,
    'ir.model.fields', 'search_read',
    [[[('name', '=', 'x_my_field'), ('model', '=', 'product.template')]]],
    {'fields': ['id', 'name', 'translate']}
)[0]

# Ota käännös käyttöön
models.execute_kw(
    ODOO_DB, uid, ODOO_API_KEY,
    'ir.model.fields', 'write',
    [[field['id']], {'translate': True}]
)

Tämä lähestymistapa toimii hyvin tiimeille, jotka tekevät Odoo-mukautuksia skriptien tai muistioiden kautta ilman pääsyä lähdekoodiin.


Käännösten hallinta: Vienti ja tuonti

Kun käännetyt kentät ovat paikoillaan, käännösprosessi Odoossa on suoraviivainen:


  1. Siirry kohtaan Asetukset > Käännökset > Vie käännös ladataksesi .po- tai .csv-tiedoston kaikista kääntämättömistä merkkijonoista tietylle kielelle.
  2. Täytä käännökset tiedostoon (tai lähetä se kääntäjälle).
  3. Siirry kohtaan Asetukset > Käännökset > Tuo käännös ladataksesi valmis tiedosto takaisin Odoohon.

Tietuekohtaisia käännöksiä (kuten tuotteen nimiä) voit myös muokata suoraan käyttöliittymässä kentän vieressä olevan kielilippuikoni avulla. Tämä on käytännöllisempää pienille sisällöille.


Kääntäminen API:n kautta

Kun kirjoitat tai päivität käännettyä kenttää XML-RPC API:n kautta, siirrä kieli kontekstiin:


# Kirjoita ranskalainen käännös tuotteen nimeksi
models.execute_kw(
    ODOO_DB, uid, ODOO_API_KEY,
    'product.template', 'write',
    [[product_id], {'name': 'Ordinateur Portable Ultra'}],
    {'context': {'lang': 'fr_FR'}}
)

Kirjoittaminen tietyllä kielellä kontekstissa päivittää vain kyseisen kielen käännöksen. Muut kieliarvot pysyvät koskemattomina. Tämä on siisti tapa siirtää käännettyä sisältöä Odoo-järjestelmään ulkoisesta järjestelmästä.

Parhaat käytännöt


Käännetyt kentät ovat suoraviivaisia, kun niitä käytetään oikein, mutta muutama tapa säästää paljon aikaa ja hämmennystä.


Aseta aina ensin peruskieliarvo

Ennen kuin lisäät käännöksiä muille kielille, varmista, että peruskieliarvo on oikea ja täydellinen. Kaikki muut käännökset perustuvat tähän perusversioon. Jos muutat perusarvoa myöhemmin, muut käännökset eivät päivity automaattisesti ja ne ovat epäsynkronoituneita.


Käännä vain kenttiä, jotka todella tarvitsevat sitä

Ei jokaisen tekstikentän tarvitse olla käännettävä. Sisäiset viitekoodit, tekniset tunnisteet ja kentät, jotka ovat näkyvissä vain toimistohenkilöstölle yksikielisessä yrityksessä, eivät hyödy käännöksistä. Lisäämällä translate=True liian moniin kenttiin lisää monimutkaisuutta ja käännettävien määrää, jota on ylläpidettävä.


Käytä vienti/tuontityöskentelyä suurille käännöstehtäville

Suurille luetteloille (satoja tai tuhansia tuotteita) käännösten muokkaaminen yksi kerrallaan käyttöliittymässä on epäkäytännöllistä. Käytä käännöksen vientitoimintoa tiedoston luomiseksi, käännä suurissa erissä ja tuo takaisin. Tämä on paljon nopeampaa ja vähemmän virhealtista.


Siirrä kielikonteksti kaikissa API-kutsuissa

Kun luet tai kirjoitat käännettyjä kenttiä Odoo API:n kautta, siirrä aina 'lang': 'xx_XX' kontekstissa. Ilman sitä API oletusarvoisesti käyttää käyttäjän kieltä, mikä ei välttämättä ole se, mitä tarkoitat. Ole selkeä, jotta vältät hienovaraisia virheitä, joissa tiedot tallennetaan väärälle kielelle.


Ylläpidä käännöksiä, kun lähde muuttuu

Kun päivität käännetyn kentän peruskieliarvoa, muiden kielten käännöksiä ei päivitetä automaattisesti. Rakenna tarkistusprosessi sisältötyöskentelyysi, jotta kääntäjät saavat ilmoituksen, kun lähdesisältö muuttuu ja käännöksiä on päivitettävä.

Yleiset sudenkuopat


Even experienced Odoo consultants run into these mistakes. Being aware of them upfront will save you a lot of debugging time.


Unohtaminen kielikontekstin välittämisestä API-kirjoituksissa

Tämä on yleisin virhe, kun integroidaan ulkoisia järjestelmiä Odoon kanssa. Jos kirjoitat tuotteen nimen API:n kautta ilman kielitietoisuutta, Odoo kirjoittaa sen käyttäjän oletuskielellä. Jos kyseinen käyttäjä on määritetty englanniksi, mutta halusit asettaa ranskankielisen käännöksen, olet korvannut englanninkielisen arvon. Ole aina selkeä kielikontekstista.


Oletetaan, että käännetyt kentät suodatetaan hauissa

Kun haet käännetystä kentästä (esimerkiksi etsit tuotetta nimen perusteella), Odoo etsii oletuksena aktiivisella kielellä. Tuote, jonka nimi on "Laptop Stand" englanniksi, ei näy hakutuloksissa, jos käyttäjä on ranskaksi eikä ranskankielistä käännöstä ole vielä asetettu. Varmista, että käännökset ovat kunnossa ennen kuin odotat hakujen toimivan eri kielillä.


Käännettyjen ja ei-käännettyjen kenttien sekoittaminen raporteissa

Jos mukautettu Odoo-raportti tai vienti käyttää sekoitusta käännetyistä ja ei-käännetyistä tekstikentistä, tulos voi olla epäjohdonmukainen: jotkut otsikot näkyvät käyttäjän kielellä, toiset näkyvät aina peruskielellä. Tarkista raporttikenttäsi huolellisesti ja päätä etukäteen, pitäisikö jokaisen olla käännettävissä.


Käännösohjelman ylikuormituksen huomioimatta jättäminen lasketuissa kentissä

Jos sinulla on Odoo-laskettu kenttä, joka rakentaa merkkijonon useista käännetyistä kentistä, laskenta tapahtuu aktiivisella kielellä pyyntöhetkellä. Tulos ei automaattisesti tallennu kieleittäin. Jos tarvitset lasketun yhdistelmän käännetyistä arvoista useilla kielillä, sinun on käsiteltävä kielikohtainen laskenta erikseen.


Kielen poistaminen ilman käännösten siivoamista

Kun deaktivoit tai poistat kielen Odoosta, kyseisen kielen käännösarvot voivat jäädä tietokantaan riippuen versiostasi. Tämä on yleensä harmitonta, mutta se voi lisätä häiriötekijöitä. Tarkista aina käännösdatasi kielen deaktivoimisen jälkeen tuotantoympäristössä.

Yhteenveto


Käännetyt kentät ovat yksi käytännöllisimmistä ominaisuuksista Odoo-kehyksessä yrityksille, jotka työskentelevät useilla kielillä. Yksi parametri, translate=True, avaa mahdollisuuden ylläpitää paikallista sisältöä tuotekatalogeille, sähköpostipohjille, verkkosivuille ja mukautetuille kentille ilman, että tietueita tarvitsee kopioida tai hallita erillisiä järjestelmiä.


Avain on olla tietoinen siitä, mitkä kentät todella tarvitsevat käännöstä. Käytä sitä siellä, missä se tekee eron käyttäjillesi tai asiakkaille, hallitse käännöksiä vienti/tuonti-työnkulun kautta skaalautuvuuden vuoksi, ja ole aina selkeä kieliyhteydestä työskennellessäsi Odoo API:n kanssa.


Olitpa sitten perustamassa monikielistä verkkokauppaa, käyttämässä Odoo:ta kansainvälisille tiimeille tai tekemässä Odoo-kehitystä mukautetussa moduulissa, käännettyjen kenttien ymmärtäminen auttaa sinua rakentamaan siistimpiä ja käyttäjäystävällisempiä ratkaisuja.

Työskenteletkö monikielisen Odoo-toteutuksen parissa ja tarvitsetko ohjeita kenttäkonfiguraatioon tai käännöstyönkulkuun? Ota yhteyttä Dasolo-tiimiin ja autamme mielellämme sinua saamaan sen oikein.

Käännetyt Kentät Odoossa: Täydellinen Opas
Dasolo 6. maaliskuuta 2026
Jaa tämä kirjoitus
Kirjaudu sisään jättääksesi kommentin