Scala / Playframework - IF功能无法正常工作

时间:2014-05-23 18:01:46

标签: scala if-statement playframework

Scala / Playframework - IF函数未按预期工作,结果始终为真:

@if(Play.current.configuration.getString("all.team.objectId") != user.currentGroupId.toString) {
                    <div class="teamSelection clearfix">
                        Team: 
                        <select class="customSelectUI-groupPicker" data-delegate-id="group-select" data-delegate-option="del-option" name="groupId" data-xpl="groupSelect" onchange="document.forms['groupChooser'].submit()" id="selGroupList">
                            @for( g <- user.groups.filter(_.status == UserStatus.ACTIVE)) {
                                <option @{if(user.currentGroupId == g.groupId) "SELECTED" } value="@g.groupId">@g.name</option>
                            }
                        </select>
                    </div>
                }

Play.current.configuration.getString("all.team.objectId") - 字符串

user.currentGroupId 对象ID ,这就是为什么我使用&#34; toString&#34;将其转换为字符串的原因

其他信息: 我尝试@Play.current.configuration.getString("all.team.objectId")@user.currentGroupId.toString只是为了查看比较值,即使值相同,结果仍为true,它应该为false并隐藏下拉列表选择。

回答: 感谢David和Liosedhel

@Monnster,从你的问题来看,我假设你正在使用play.api.Play对象,所以,方法getString返回一个Option [String]而不是String,这就是为什么你总是如此 - David

根据David评论,你应该使用这个结构Play.current.configuration.getString(&#34; all.team.objectId&#34;)。getOrElse(&#34;&#34;);此表达式返回String(Not Option [String])对于您预期的行为。 (我不会将此作为答案发布,因为@David评论在我之前)。 - liosedhel

Play.current.configuration.getString("all.team.objectId").getOrElse("");

0 个答案:

没有答案