Skip to content

数据字典(Dict)扩展

EduSoho系统下的数据字典是一组简单的Map集,被存放在一个yml文件里,在视图文件里可以直接被调用。例如有以下数据字典dict.zh_CN.yml

php
courseStatus:
    draft: 未发布
    published: 已发布
    closed: 已关闭

则在视图页面调用如下代码:

html
  {{ dict_text('courseStatus', 'draft') }}

那么如何扩展呢?

  • EduSoho下数据字典目录为src/AppBundle/Resources/config/,所以插件中数据字典的目录为/plugins/yourPlugin/Resources/config/,在该目录下新建字典文件即可。
  • 关于命名:EduSoho系自8.0.20版本后支持中英文双语,所以字典文件名称中文命名为dict.zh_CN.yml,英文命名为dict.en.yml
  • 数据字典中的Key值遵循驼峰命名规范,为避免与EduSoho系统字典名字的Key重名,最好带上plugin前缀,如下所示:
php
 pluginCourseStatus:
    draft: 未发布
    published: 已发布
    closed: 已关闭