unisolutions/silverstripe-i18nenum

此包的最新版本(dev-master)没有提供许可证信息。

为 Silverstripe 提供的可翻译枚举字段类型。

安装数: 1,366

依赖项: 0

建议者: 0

安全: 0

星级: 5

关注者: 3

分支: 6

开放性问题: 2

类型:silverstripe-module

dev-master 2015-12-23 18:18 UTC

This package is not auto-updated.

Last update: 2024-09-14 14:06:03 UTC


README

可翻译枚举字段类型

维护者联系方式

Elvinas Liutkevičius

<elvinas (at) unisolutions (dot) eu>

要求

SilverStripe 3

文档

简单地使用标准方法安装模块。

现在您可以使用可翻译枚举字段创建数据字段。

class MyDataObject extends DataObject {
	public static $db = array(
		'DbField' => "i18nEnum('default, other', 'default')",
	);
}

要在 GridField 中获取翻译后的枚举值,您需要以这种方式返回值

class MyDataObject extends DataObject {
	...
	public function DbField() {
		return i18nEnum::getTranslatedValue($this->className, __FUNCTION__, $this->{__FUNCTION__});
	}
}

默认情况下,翻译命名空间将是您的 DataObject 类名,实体将构造如下:"db_{DbField}_{枚举值}"。因此,您的翻译文件应如下所示

lang:
  MyDataObject:
    db_DbField_default: 'Default'
    db_DbField_other: 'Other'

已知问题

  • 在 GridFieldFilterHeader 中的 GridField 过滤不会按预期工作 - 它仍然仅使用枚举值构造搜索过滤器。