Использование @select в игре! Шаблон Framework 2.3 и Java

1

Я пытаюсь использовать элемент "select" в Play! 2.3, и не может заставить его работать. Что я поставлю в шаблон? В настоящее время у меня есть:

public static Result add(Long sensorId) {
    Form<Action> myForm = Form.form(Action.class);

    Sensor sensor = Sensor.find.byId(sensorId);
    Action action = new Action();
    action.actionUp = true;
    action.sensor = sensor;
    myForm.fill(action);

    HashMap<String, String> devices = new HashMap<>();
    for(Device device : Device.find.all()){
        devices.put(device.id.toString(), device.name);
    }

    return ok(editView.render(myForm, action, devices));
}

И шаблон:

@(myForm: Form[models.Action], action: models.Action, deviceList: HashMap[String, String])

@helper.select(myForm("device"), deviceList,'_label -> "Perform on device")

Но это не работает, так как ожидает Seq [(String, String)]. Я не могу найти способ создать это на Java, хотя... любая помощь очень ценится!

Теги:
playframework-2.0

1 ответ

1
Лучший ответ

Помощник формы не будет знать, если вы прямо поместите список deviceList в select и, в конце концов, он ожидает от вас options. В этом причина показывает, что эта ошибка expects a Seq[(String, String)].

Чтобы решить эту проблему, вы должны обернуть список deviceList помощью options чтобы хелпер знал, что deviceList - это options для select.

Так что это должно быть похоже на следующее.

@helper.select(myForm("device"), options(deviceList),'_label -> "Perform on device")
  • 0
    Хорошо, я видел упомянутую возможность 'options ()', но для меня она должна быть @ helper.options (); Теперь это работает.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню