public class Request extends Model {
public static enum Category {
First, Second, Third
}
public Category category;
}
我似乎无法在我的YAML测试装置/初始数据中正确创建具有类别的请求。我尝试过这样的事情:
Request(areq):
category: Request.Category.Third
还有其他一些变化。什么都没有用。 SnakeYAML page给了我一些诱人的提示,但我没有看到如何正确引用我的应用程序包。这个的正确语法是什么?
答案 0 :(得分:5)
为什么不使用
...
category: Third
SnakeYAML应该识别类别的类型,并在对象构造期间将第三个字符串转换为类别枚举的第三个值。
答案 1 :(得分:1)
在Play1.2.x中,您也可以使用此表单:
灯具:
EnumTest(enumtest01):
status: ${models.EnumTest.Status.ACTIVE}
EnumTest(enumtest02):
status: ${models.EnumTest.Status.DELETED}
对于这个模型:
@Entity
public class EnumTest extends Model {
public enum Status {
ACTIVE, DELETED
}
public Status status;
}
就像您可以在路由和application.conf文件中使用Groovy模板一样,您也可以在yml文件中使用。
答案 2 :(得分:0)
说实话,我不是一个有经验的用户,但我认为Request是个坏名字,因为该类存在于play-framework中。所以我建议重命名它。但是对于你的问题,没有必要。使用完整名称,即models.Request.Category.Third
。