如何在Play框架模板中访问Enum字段

时间:2012-03-01 16:05:11

标签: java enums playframework playframework-1.x

我有一个Enum,其中包含某些字段,我需要在play1.2.4模板中访问

public Enum WORKER{
   FARMER,SMITH,GARDENER
}

假设我需要检查模板中的'人'变量是否是农民,史密斯或园丁,我该怎么办?

#{if person.Type==WORKER.FARMER}
   ...do something...
#{/if}

我来了

NullPointerException : Cannot get property 'FARMER' on null object.

因此,模板不知道Enum WORKER。因为无法为Enum创建新实例,我应该如何使Enum可用于模板?

1 个答案:

答案 0 :(得分:11)

在模板中使用枚举的绝对类名。 例如。如果您的枚举WORKER位于包model.myenums中,则模板代码如下所示:

#{if person.Type == model.myenums.WORKER.FARMER}
   ...do something...
#{/if}