Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在gsp页面的中使用sql查询_Sql_Grails_Gsp - Fatal编程技术网

如何在gsp页面的中使用sql查询

如何在gsp页面的中使用sql查询,sql,grails,gsp,Sql,Grails,Gsp,是否可以使用g:each迭代sql查询 <g:each in="${Books.list()}"> 为了好的设计,让我们说这是不可能的 您应该坚持MVC模式的原则,并将此代码保存在控制器或域类中 您的控制器可能如下所示 def list = { def results = Book.executeQuery(sql); [results:results] } 你认为普惠制可能是这样的 <ul> <g:each in="${results

是否可以使用g:each迭代sql查询

 <g:each in="${Books.list()}">

为了好的设计,让我们说这是不可能的

您应该坚持MVC模式的原则,并将此代码保存在控制器或域类中

您的控制器可能如下所示

def list = {
    def results = Book.executeQuery(sql);
    [results:results]
}
你认为普惠制可能是这样的

<ul>
    <g:each in="${results}" var="result">
      <li>${result}</li>
    </g:each>
</ul>

普惠制中不建议这样做。相反,您应该在控制器内执行数据处理,然后将结果传递给gsp。优点:

更好的概述 更方便地访问服务和其他助手类 易于维护 使用serivces封装您的登录,以实现可重用性 ... 如果您想在gsp中实现这一点,可以使用hql查询,例如:

Author.executeQuery("select a from Author as a")

您不应该在视图中放置sql代码。坚持MVC模式的力量。另外,您的sql示例似乎会引起一些问题。
Author.executeQuery("select a from Author as a")