【问题标题】:Import Array with YAML in Play Framework在 Play 框架中使用 YAML 导入数组
【发布时间】:2011-07-17 12:18:24
【问题描述】:

我想用 YAML 导入数据。我有一个名为 Question 的模型

package models;

import java.util.*;

import javax.persistence.Entity;
import javax.persistence.ManyToOne;

import play.data.validation.*;
import play.db.jpa.Model;

@Entity
public class Question extends Model{

    @Required
    public String question; 
    @Required
    public String[] choices ;
    @ManyToOne
    public TestClass test;
    @Required
    public Integer trueChoice;

    public Question(TestClass test, Integer trueChoice, Choices[] choices, String question){
        this.test = test;
        choices = new Choices[4];
        this.trueChoice = trueChoice;
        this.question = question;
    }

}

在这个模型中,我有选择数组。如何用 yaml 加载这个数组?

【问题讨论】:

    标签: arrays playframework yaml


    【解决方案1】:

    如果您查看YAML documentation(第 2.1 节)或Wikipedia page,它们会描述列表的使用方式。列表通过在新行上为每个项目使用破折号 (-) 来描述。请注意缩进。

    对于您的示例,您将有如下内容:

    choices:
      - choice1
      - choice2
      - choice3
    

    【讨论】:

    • 我已经尝试过了,但它不适用于 String[] 类型的数组。当我使用 ArrayList 时,它起作用了……
    【解决方案2】:

    您的定义似乎与您的选择数组初始化(或选择应该扩展字符串)不匹配:

    public String[] choices ;
    

    试试:

    public Choices[] choices;
    

    相反?

    注意:似乎“选择”在这里会是一个更好的名字?

    【讨论】:

      猜你喜欢
      • 2017-05-30
      • 2016-07-08
      • 2012-07-05
      • 2014-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      相关资源
      最近更新 更多