Playframework 2.0 如何使用Play Frame work迭代?

Playframework 2.0 如何使用Play Frame work迭代?,playframework-2.0,Playframework 2.0,我试图做一个PlayFramework教程,但失败了 index.scala.html: Compilation error not found: type Customer In C:\test\app\views\index.scala.html at line 2. @main("welcome") { @(customer: Customer, orders: List[Order]) <h1>Welcome @customer.name!</h1>

我试图做一个PlayFramework教程,但失败了

index.scala.html:

Compilation error

not found: type Customer

In C:\test\app\views\index.scala.html at line 2.


@main("welcome") {
@(customer: Customer, orders: List[Order]) 

<h1>Welcome @customer.name!</h1>

<ul> 
@for(order <- orders) {
<li>@order.getTitle()</li>

} 
</ul>
}
public static Result index() {

response().setContentType("text/html");
return ok();

}

请回答。谷歌搜索太多了,但我不能。你好像忘了导入模型。尝试将此添加到
@main
事件之前:

@import your.package.Customer
@import your.another.package.Order
或者,您可以按如下方式导入整个软件包:

@import your.package._
@(customer: Customer, orders: List[Order]) 

@import your.package._

@main("welcome") {

    <h1>Welcome @customer.name!</h1>

    <ul> 
      @for(order <- orders) {
        <li>@order.getTitle()</li>
      } 
    </ul>
}
编辑:是的,我想这一行
@(客户:客户,订单:列表[订单])
应该是您视图中的第一行,而不是在
@main
行之后,所以它可能应该是这样的:

@import your.package._
@(customer: Customer, orders: List[Order]) 

@import your.package._

@main("welcome") {

    <h1>Welcome @customer.name!</h1>

    <ul> 
      @for(order <- orders) {
        <li>@order.getTitle()</li>
      } 
    </ul>
}
编辑2:好的,下面是您的操作方法

Customer和Order类可能在同一个包中,模板内的导入与简单java\scala导入的工作方式完全相同

例如:

Customer.java

Order.java

Application.java

index.scala.html

@(客户:客户,订单:列表[订单])
@导入模型_
@主要(“欢迎”){
欢迎@customer.name!

    @为了(order thank you@serejja。我需要定制和订购软件包吗?不要在PlayFramework文档中搜索。请检查这个。我还没有解决这个问题。你能给我看另一个简单的迭代示例吗?我真的需要它。太难了。我希望你是个聪明的人。真的谢谢你。你当然是个温柔的人。我祝福你。你有吗很好。很抱歉。我尝试更新您的源代码。但是打印编译错误。//index.scala.html:@main(“欢迎”){:对象main中缺少方法apply的参数;如果要将此方法视为部分应用的函数,请使用` `,请帮助我serejja T.tca是否可以显示main.scala.html和index.scala.html源代码?
    package models;
    
    public class Order {
        private String title; //we can make it private because you use the getter in the template
    
        public String getTitle() {
             return this.title;
        }
    
        public void setTitle(String title) {
             this.title = title;
        }
    }
    
     import models.*;
     import static java.utils.Arrays.*;
    
     ....
    
     public static Result index() {
    
        response().setContentType("text/html");
        Customer customer = new Customer();
        customer.name = "serejja";
        Order order1 = new Order();
        order1.setTitle("my order 1");
        Order order2 = new Order();
        order2.setTitle("my order 2");
        java.util.List orders = asList(order1, order2);
        return ok(index.render(customer, orders));
     }
    
    @(customer: Customer, orders: List[Order]) 
    
    @import models._
    
    @main("welcome") {
    
        <h1>Welcome @customer.name!</h1>
    
        <ul> 
          @for(order <- orders) {
            <li>@order.getTitle()</li>
          } 
        </ul>
    }