SkygearIO / features

Feature Tracking Repo for Skygear
Apache License 2.0
3 stars 12 forks source link

[CMS] Multilingual support #229

Closed carmenlau closed 5 years ago

carmenlau commented 6 years ago

Description

Multilingual models is application specific. See if we can assume one generic models for multi languages support?

Using JSON

Using multiple columns

Scenario

Put list of Scenario how developers will use this API

Portal Design

Remove this section if the feature have no Portal

API Design

Remove this section if the feature have no API

Open Questions

Put a list of open questions here before a complete design / specification is decided

Related Issues

chpapa commented 6 years ago

Just want to add that when we have multiple language in CMS, we will need to consider how it works at client API. (And that is probably more difficult than the CMS interface @@)

Some thought:

  1. Don’t confuse CloudDB query API with translation API, say if we magically return only a single locale string for all string columns, developer may confuses or it may prevent them to do something. Rails have a lot of plugins do magical things on activerecord, if we decide to go with magic in CloudDB api, let’s at least study how those framework handle it...

  2. I have seen other BaaS have a separate set of Content API and tables for that, it might be easier as it won’t touch or do magic on the DB API layer. Instead the trade off is performance penalty of another query to another table for the translated strings.

tensiuyan commented 6 years ago

talked with PMs. Most project needs multi-lingual functions. Eng, Traditional Chinese & Simplified Chinese.

chpapa commented 6 years ago

@tensiuyan Not sure if it is too technical for u, but I guess if we want to do it earlier (maybe right after CMS Next completed basic feature?), we would also want to know how most projects structure their database for multi-lingual, to help us design the DB structure we support (or crazy idea: we support more than 1 DB structure!?)