如何在电梯中重定向到新页面

时间:2011-03-18 22:35:19

标签: scala redirect lift

我是Scala和Lift的新手,我已经用了2个月了,所以我遇到了一些麻烦。我一直在阅读简单的电梯和最终的解除指南,但我按下按钮时尝试了重定向到另一个页面的方法没有成功。

这是我到目前为止的代码:

班级BL_LOG001S {

object Log extends Logger

var lang_id = 1//English
var ido = IDO_LOG001
var odo = ODO_LOG001
var usr = new User
var input_usr = DAO_LOGIN_USER_001.create

def init = {

    Log.info("INIT 1: LANG_ID: "+lang_id)
    lang_id = usr.lang_id
    Log.info("INIT 2: LANG_ID: "+ lang_id)

}

def title = {
    Log.info("TITLE: INIT END:")
    <h2>{odo.body("title").toLabel(lang_id)}</h2>
    <span>{usr.login_nm.toString}</span>
}

def login() = {

    <table>
        {odo.body("organization_nm").toTableElement(lang_id)}
        {odo.body("login_nm").toTableElement(lang_id)}
        {odo.body("password").toTableElement(lang_id)}
    </table>
}

def transaction() = {
    <table>
        <tr>
            <td><LOG001_1:submit><button>Login</button></LOG001_1:submit>
            </td>
        </tr>
    </table>
}

def display(form: NodeSeq) = {
    <lift:BL_LOG001.execute form="post" multipart="true">
        {login}
        {transaction}
    </lift:BL_LOG001.execute>

}

def execute(form: NodeSeq) = {
    doBind(form)

}
def checkAndLogin(): Unit = {

        Log.info("Check: init: organization_nm = "+input_usr.organization_nm)
        ido.body("organization_nm").setValue(input_usr.organization_nm)
        ido.body("login_nm").setValue(input_usr.login_nm)
        ido.body("password").setValue(input_usr.password)
        usr.login(ido.body("organization_nm").getValue.toString,
                ido.body("login_nm").getValue.toString,
                ido.body("password").getValue.toString)
        S.redirectTo("/AdminPage/ADM001")
}

def doBind(form: NodeSeq) = {
    bind("LOG001_1", form,
            "organization_nm" -> input_usr.organization_nm.toForm,
            "login_nm" -> input_usr.login_nm.toForm,
            "password" -> input_usr.password.toForm,
            "submit" -> SHtml.submit("Login", checkAndLogin))

}

}

方法checkAndLogin有S.redirectTo,但它没有重定向到我需要的页面。我需要的是捕获组织和登录名,并在下一页显示它们。

如果我问一些愚蠢的话,我很抱歉。我真的很感激任何帮助。 感谢

1 个答案:

答案 0 :(得分:1)

您是否尝试过对象 JsCmds 的方法 RedirectTo [doc of this here]

也许它可以帮到你。

对于未来 - 对于与Lift框架严格相关的问题,我建议在Lift forum询问,所有Lift专家都在哪里,他们对每个Lift开发人员都非常有帮助,特别是对于新手:)

祝你好运