2

当我尝试访问 Application 类或模型中的模型时,它会引发以下错误。我可以创建模型并将其持久化。但是如果我尝试访问它,问题。

执行异常

[InvalidPropertyException: Invalid property 'id' of bean class [models.CandidateToSalesforce]: No property 'id' found]
In [...]/app/views/syncedRecords.scala.html at line 11.

7   <h3>Results</h3>
8   <ul>
9       @for(r <- records) {
10          <li>
11              @r    [[ this is the line]]
12          </li>
13      }
14  </ul>
15}

这可以通过添加 getter 来解决,如下所示。

@Id
public Long id;

// NOTE: play framework was bugging out without this method even though it's supposed to be automatic
public Long getId() {
    return id;
}

没什么大不了的,但这不是错吗?文档说“ Play 旨在自动生成 getter/setter,以确保与期望它们在运行时可用的库兼容”

我是否有一个已知的配置问题会以其他方式困扰我?

4

1 回答 1

2

您可以在模型中编写自己的toString()方法:

public String toString(){
     return this.id.toString();
}

尽管返回真实的一些字符串而不是 ie 可能是更好的主意。

return this.name+" "+this.somethingElse;

然后,如果您将this is my record: @r在模板中使用,它将呈现toString()返回。

您可以使用以下方法获取您的id不写自定义 getter:(@r.idr.id在控制器中)

于 2012-05-14T20:06:44.873 回答