Grails 显示数据库中的数据
Grails display data from database
我正在按照本教程创建一个 Grails 应用程序:http://grails.asia/grails-tutorial-for-beginners-display-data-from-the-database
当我尝试显示数据库中的数据时,没有任何反应。下面是我的控制器代码:
def index(){
def users = User.list();
[users:users]
}
def displayUsers(){
if(User.count()==0){
render 'User list is empty!';
}else {
render(view: 'userlist.gsp');
//a little test
println User.list().size();
println User.count();
for(User u : User.list()){
println u.username;
}
}
}
User.count() 正在运行,因为我可以在控制台中看到用户名并且 userlist.gsp 每次都呈现,但似乎我的视图代码没有看到列表。这是 userlist.gsp 代码:
<body>
userlist.gsp
<g:each in="${users}" var="user" status="i">
<h3>${i+1}. ${user.username}</h3>
</g:each>
</body>
这段代码有什么问题?我一直在我的类比应用程序中执行与上述教程完全相同的步骤,但它似乎不起作用。这特别奇怪,因为我在这个link下发现了一个类似的问题:grails: show list of elements from database in gsp
并且它已被标记为已接受的答案。为什么完全相同的方式在我的应用程序中不起作用?
如下渲染 gsp 视图(将数据作为模型传递)。
render(view: "userlist", model: [userList : User.list()])
现在在gsp中获取模型数据如下。
<body>
userlist.gsp
<g:each in="${userList}" var="user" status="i">
<h3>${i+1}. ${user.username}</h3>
</g:each>
</body>
你可以做很多选择:
- 将控制器中的 gsp 操作从
def index()
重命名为 def userlist()
或将 index.gsp
文件重命名为 userlist.gsp
- 您可以使用
${users}
对象 重定向到 userlist.gsp
所以改变控制器 def index()
动作
[users:users]
到 redirect(action: "userlist", params: ["users": users])
注意:第二种方法将在url中显示参数。
Refer Grails Doc
- 您可以使用
chain
例如chain(action: "userlist", model: ["users": users])
我正在按照本教程创建一个 Grails 应用程序:http://grails.asia/grails-tutorial-for-beginners-display-data-from-the-database
当我尝试显示数据库中的数据时,没有任何反应。下面是我的控制器代码:
def index(){
def users = User.list();
[users:users]
}
def displayUsers(){
if(User.count()==0){
render 'User list is empty!';
}else {
render(view: 'userlist.gsp');
//a little test
println User.list().size();
println User.count();
for(User u : User.list()){
println u.username;
}
}
}
User.count() 正在运行,因为我可以在控制台中看到用户名并且 userlist.gsp 每次都呈现,但似乎我的视图代码没有看到列表。这是 userlist.gsp 代码:
<body>
userlist.gsp
<g:each in="${users}" var="user" status="i">
<h3>${i+1}. ${user.username}</h3>
</g:each>
</body>
这段代码有什么问题?我一直在我的类比应用程序中执行与上述教程完全相同的步骤,但它似乎不起作用。这特别奇怪,因为我在这个link下发现了一个类似的问题:grails: show list of elements from database in gsp 并且它已被标记为已接受的答案。为什么完全相同的方式在我的应用程序中不起作用?
如下渲染 gsp 视图(将数据作为模型传递)。
render(view: "userlist", model: [userList : User.list()])
现在在gsp中获取模型数据如下。
<body>
userlist.gsp
<g:each in="${userList}" var="user" status="i">
<h3>${i+1}. ${user.username}</h3>
</g:each>
</body>
你可以做很多选择:
- 将控制器中的 gsp 操作从
def index()
重命名为def userlist()
或将 index.gsp
文件重命名为 userlist.gsp
- 您可以使用
${users}
对象 重定向到
userlist.gsp
所以改变控制器 def index()
动作
[users:users]
到 redirect(action: "userlist", params: ["users": users])
注意:第二种方法将在url中显示参数。 Refer Grails Doc
- 您可以使用
chain
例如chain(action: "userlist", model: ["users": users])