社区版的字典数据说明

[复制链接]
查看820 | 回复1 | 2024-11-1 15:44:34 | 显示全部楼层 |阅读模式

系统参数、动态配置的选项、帮助文档的地址都可通过平台提供的字典进行维护;

如以下功能:

image.png

image.png

image.png

另外还有App中的一些选择参数,因为App需要实现多语言,自然这些选择参数也是需要实现多语言的;

image.png

需要配置这些参数,首先登录到社区版云管平台,找到系统设置>字典管理;

image.png

这里的菜单分为两级,第一级配置字典类型,第二级配置字典参数项;

image.png

image.png

如果需要对字典进行翻译,可以进入到多语言管理>>数据多语言进行配置

image.png

image.png

平台和AppI如果需要获取字典数据,需要调用接口指定字典类型进行获取;

image.png

如果社区版进行二次开放需要在代码中读取字典数据,则参考如下写法;

// 设备性质字典获取
deviceNature, _ := new(services.DictTempData).GetDictByCode(iotconst.Dict_type_device_nature)

// 将字典的值转换为字典名称
deviceNature.Value(info.DeviceNatureKey)

另一种情况,如果需要获取字典的翻译数据,则可以通过调用redis获取;


langMap, _ := iotredis.GetClient().HGetAll(context.Background(), iotconst.HKEY_LANGUAGE_DATA_PREFIX+iotconst.LANG_T_CONFIG_DICT_DATA).Result()

//从字典翻译map中获取你想要的翻译内容
//key的格式如下,{语言}_{字典类型}_{字典项的值}_name, 例如:zh_deviceNature_1_name (获取设备性值为1的名称)
cKey := fmt.Sprintf("%v_%v-%v_name", lang, dictType, dictValue)
if _, ok := langMap[cKey]; ok {
    item.DictLabel = iotutil.MapGetStringVal(langMap[cKey], dictLabel)
} 
回复

使用道具 举报

大猫的鱼 | 2024-11-2 23:24:36 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则