读取速度模板中映射的模型对象
时间:2020-03-05 18:42:27 来源:igfitidea点击:
我有一个Struts + Velocity结构,例如Person类,其一个属性是Car对象(具有自己的getter / setter方法),并使用ModelDriven和getModel结构将其映射到提交给Action的Velocity表单。
如果car属性不为null或者car.id!= 0,则在显示"查看汽车"的表单上放置一个按钮,如果car为null或者car.id = 0,则显示另一个按钮"选择汽车"。
我该如何编码。我在模板文件中尝试了类似的方法:
#if($car != null) #ssubmit("name=view" "value=View Car") #else #ssubmit("name=new" "value=Choose Car") #end
但是我一直在#if行中收到有关Null值的错误。
我还在Person中创建了一个布尔方法hasCar()尝试,但是我无法访问它,也不知道为什么。
而且Velocity + Struts教程很难找到或者有很好的信息。
谢谢
解决方案
回答
我们应该将#if行更改为:
#if($car)
回答
在即将发布的Velocity 1.6发行版中,我们将能够执行#if($ car == $ null)而不会出现错误消息。这将使我们可以轻松地区分$ car为空和何时为假。现在要做到这一点,需要#if($ car && $ car!= false),它并不那么友好。