从控制器功能接收参数到视图页面的问题

时间:2014-04-08 11:18:37

标签: scala views playframework-2.1 controllers

我在尝试从控制器接收视图中时遇到错误。在控制器中我使用两个功能。这两个函数都返回一个值来查看页面

以下是示例:

public static Result home() {

    Identity user = (Identity) ctx().args.get(SecureSocial.USER_KEY);
String userEmail = user.email().isDefined() ? user.email().get() : "Not available";
System.out.println("Logged in - "+  userEmail);
String emailCheck = userEmail.substring(userEmail.indexOf("@") + 1, userEmail.length());
emailCheck = emailCheck.substring(0, emailCheck.indexOf("."));

    if (emailCheck.matches(Messages.get("emailCheckAll"))) {
        return ok(home.render(user));
    }

    public static Result getId() {
        Map<String, String[]> parameters = request().body().asFormUrlEncoded();
        String EAN_code= parameters.get("truckid")[0].trim();
        List<Truck> isvalid= Truck.findTruckId(EAN_code);
        System.out.println(EAN_code);
        System.out.println(isvalid.get(0));
        BigInteger qty=Truck.getTruckQuantity(EAN_code);
        return ok(home.render(qty.toString()));
    }

在home.scala.html我试图收到像

@(user : securesocial.core.Identity)
(qty:String)
@import securesocial.core.IdentityProvider 
@import Http.Context.Implicit 

但我无法从数量中获得价值。但我在控制器中有价值。相同的值不会去查看。请有人帮帮我。它显示我在scala文件中的错误&#34;未找到值数量&#34; ...

1 个答案:

答案 0 :(得分:0)

您已将视图声明为具有两个参数列表:

@(user : securesocial.core.Identity) (qty:String)

当您调用视图时,您只能满足其中一个。

ok(home.render(qty.toString()))

尝试:

ok(home.render(user)(qty.toString()))