Angular-translate,翻译数据库中的内容

时间:2018-01-08 08:54:26

标签: javascript angularjs mongodb angular-translate

我使用AngularJS和angular-translate进行国际化。但是我的网站上有从数据库加载的产品。由于我想避免制作3个不同的集合并根据语言加载一个集合,我想使用一个并动态翻译内容。

到目前为止,我已经尝试了直截了当的方式,在我的数据库中输入以下内容:

"name" : "{{'product_general' | translate}}",

然而,它只是将其呈现为我网站上的字符串。我的问题有可能解决方案吗?

1 个答案:

答案 0 :(得分:1)

尝试仅将占位符存储在数据库中。示例中单引号中的部分:

  

product_general

从数据库中读取后,将该引用放在视图中,它应该可以正常工作。

在控制器中:

$scope.valueReadFromDb = ...;

在视图中:

{{ valueReadFromDb | translate }}

或者,如果您想在控制器端而不是视图中翻译某些内容,无论出于何种原因,您可以在控制器中注入$ filter并执行以下操作:

var translate = $filter('translate');

$scope.someVariable = translate('PLACEHOLDER');