簡體   English   中英

Neos / Flow中的領域模型本地化

[英]Localization of Domain Models in Neos / Flow

我目前正在與Neos / Flow合作開發的網站包括一個作為Flow Plugin實現的自行開發的商店系統。 產品,變體和憑證均作為域模型保留。 由於客戶希望以不同的語言提供其網站,因此我需要找到一種方法來管理域對象的翻譯。 我找不到將其翻譯成Neos / Flow的方法,所以我的第一個想法是將翻譯標識符簡單地插入可翻譯字段(描述和類似內容)中,然后將其與翻譯viewhelper一起用於視圖中。 如果客戶不想自己編輯這些字段,這將完全正常。

我的下一個想法是為每個語言維度和每個可翻譯字段實現一個額外的字段(例如description_en; description_es,...)。 但是,就可維護性和可變性而言,這將是最糟糕的方法。 我通常在TYPO3項目中工作,在這些項目中,域對象的轉換非常容易並且可以立即使用。 因此,Neos內部的這種體驗非常令人沮喪。

是否有人遇到過類似的問題,甚至找到了解決方案?

到目前為止,只要需要多語言內容,我們就通過將數據存儲在Neos Content Repository中來解決。 這樣,語言處理(即尺寸)即開即用。 另外,通過使用內聯編輯或內容模塊的檢查器,為該記錄構建UI非常容易。

注意,在CR中存儲數據並不一定意味着您必須將其存儲在/ site根節點下。 您還可以添加一個新的根節點/products來存儲您的產品。

您可以查看https://github.com/neos/metadata-contentrepositoryadapter ,其中元數據存儲在其自己的根目錄下。

希望能有所幫助,干杯,丹尼爾

記錄下來,也可以通過純Flow中的Doctrine Translateable擴展來實現:

https://github.com/Atlantic18/DoctrineExtensions/blob/master/doc/translatable.md

有關如何在Flow中激活擴展程序,請參見http://flowframework.readthedocs.io/en/stable/TheDefinitiveGuide/PartIII/Persistence.html#on-the-doctrine-event-system

但是,更干凈的方法實際上是實際上將域模型和內容分開(除非您構建了CMS,而內容是您的域;)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM