我正在尝试关注this教程。我有一个非空数据库。但表格没有传播。我试过调试它:toShow
方法返回正确的记录,在flatMap
的每次迭代中它都有一个正确的,非空的项目实例,但结果,这个方法返回的是这个:List(\n{16 spaces here},\n{16 spaces here})
。并且表格没有传播。
我的更新代码如下:
ListCar片段:
class ListCar {
def list(xhtml: NodeSeq) : NodeSeq = {
toShow.flatMap(car =>
bind("car", xhtml,
"name" -> car.name.is,
"owner" -> car.owner.name
)
)
}
private def toShow = {
Car.findAll();
}
}
list.xhtml:
<table>
<thead>
<tr>
<th>Name</th>
<th>Owner</th>
</tr>
</thead>
<tbody>
<lift:list_car.list>
<tr>
<td>
<car:name/>
</td>
<td>
<car:owner/>
</td>
</tr>
</lift:list_car.list>
</tbody>
</table>
这可能是什么问题?
答案 0 :(得分:0)
请参阅此处的示例(位于最底部):http://www.assembla.com/spaces/liftweb/wiki/View_First。不幸的是我现在无法尝试代码。您可以尝试另外两种选择:
"name" -> car.name.is
替换为"name" --> car.name
(-->
而不是->
)"name" -> car.name.is
"name" -> SHtml.text(car.name.is)
醇>
答案 1 :(得分:0)
我通过编辑html文件解决了这个问题:
而不是将<tr>
包裹在<lift:list_car.list>
中,而是将其更改为<tr class="lift:listCar.list">
,并且有效。