gpt4 book ai didi

grails - grails 形式的操作不起作用

转载 作者:行者123 更新时间:2023-12-02 15:03:50 25 4
gpt4 key购买 nike

我正在尝试创建一个简单的帐户,当单击创建按钮时,它应该执行“创建”操作,但我收到一条错误消息
HTTP 状态 404 - 未找到“/WEB-INF/grails-app/views/users/create.gsp”。

这是我的 index.gsp 代码块

<!-- CREATEFORM -->
<div id="id02" class="modal">
<g:form class="modal-content animate" controller="users" action="create">
<div class="imgcontainer">
<span onclick="document.getElementById('id02').style.display='none'" class="close" title="Close Modal">&times;</span>
<div class="container" style="text-align:center">
<b><h style="font-family: Arial, Helvetica, sans-serif; font-size: 30px">CREATE AN ACCOUNT</h></b><br/>
<input type="text" placeholder="Enter Username" name="uname" required/>

<input type="password" placeholder="Enter Password" name="psw" required/>

<input type="text" placeholder="First Name" name="firstName" required/>

<input type="text" placeholder="Last Name" name="lastName" required/>

<input type="text" placeholder="Age" name="age" required/>
<br/>
<input type="date" placeholder="Birth Date" name="birthdate" required/>
<br/>
<input type="text" placeholder="Student Number" name="studno" required/><br/>

<label>
<input type="checkbox" checked="checked" name="remember"> Remember me</input>
</label>
<br/>
<button type="submit" style="width: 100px; margin-right:10px;" >Create</input>
<button type="button" onclick="document.getElementById('id02').style.display='none'" class="cancelbtn">Cancel</button>

</div>
</div>
</g:form>
</div>

这是我的 usersController 代码块。
class usersController {    
def index(){}
def create()
{
new Users(userid:params.uname,password:params.psw).save()
new UserInfo(studentno:params.studno,age:params.age,birth_date:params.birthdate,first_name:params.firstName,last_name:params.lastName,user_id:params.uname).save()
}
}

这是错误

Error Page

最佳答案

HTTP Status 404 - "/WEB-INF/grails-app/views/users/create.gsp" not found.



因为您正在使用创建操作保存数据,但在保存数据后没有重定向选项或 create.gsp可用的。所以 grails 会首先查看是否有可用的重定向选项并尝试重定向 create.gsp
检查以下代码更改,这将保存 user iduserInfo表并重定向到索引页

所以改变你的 usersController
class usersController {
def index() {}

def create() {
def user = new Users(userid: params.uname, password: params.psw).save()
def userInfo = new UserInfo(studentno: params.studno, age: params.age, birth_date: params.birthdate, first_name: params.firstName, last_name: params.lastName, user_id: user.id).save()
if (user && userInfo) {
flash.message = "User created successfully"
redirect action: 'index'
} else {
flash.message = "Problem in user creation"
redirect action: 'index'
}

}
}

并将以下代码添加到您的 index.gsp
${flash.message}

有很多方法可以重定向到页面。你可以使用渲染,重定向,链,转发..等

请检查 grails documentation了解更多信息

关于grails - grails 形式的操作不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49851105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com