Kim的IfValue解決方案可能是最簡潔的,但可能不是最容易理解的新手。您也可以在您的實體上使用override def _showAllTemplate
。它在Crudify特徵中定義如下,所以你可以刪除鏈接TD。請注意,即使鏈接未出現在模板中,它們仍然可以訪問,因此您需要將它們從SiteMenu中阻止。要做到這一點,如果你只是覆蓋菜單locs而不是calcCreateItem方法,那會更好。
override def createMenuLoc: Box[Menu] = Empty
override def editMenuLoc: Box[Menu] = Empty
override def viewMenuLoc: Box[Menu] = Empty
def _showAllTemplate =
<lift:crud.all>
<table id={showAllId} class={showAllClass}>
<thead>
<tr>
<crud:header_item><th><crud:name/></th></crud:header_item>
<th> </th>
<th> </th>
<th> </th>
</tr>
</thead>
<tbody>
<crud:row>
<tr>
<crud:row_item><td><crud:value/></td></crud:row_item>
<td><a crud:view_href="">{S.??("View")}</a></td>
<td><a crud:edit_href="">{S.??("Edit")}</a></td>
<td><a crud:delete_href="">{S.??("Delete")}</a></td>
</tr>
</crud:row>
</tbody>
<tfoot>
<tr>
<td colspan="3"><crud:prev>{previousWord}</crud:prev></td>
<td colspan="3"><crud:next>{nextWord}</crud:next></td>
</tr>
</tfoot>
</table>
謝謝!我讚賞其他答案,但是我誠實地說,我沒有得到它。當我搜索到更多的信息時,我發現的唯一的東西是[Kim的例子的確切源代碼](http://swtsrv02.cs.hs-rm.de/redmine/projects/we-smlt/repository/修訂版/ 13/diff/trunk/smlt/src/main/scala/de/hs_rm/cs/smlt/model/Exercise.scala)(!)...甚至在某個時刻顯然已經改變了。 –