学习Grails,Grails的权威指南,第2版。第4章坚持Urlmapping

学习Grails,Grails的权威指南,第2版。第4章坚持Urlmapping,grails,Grails,我正在学习《权威指南》(第二版)中的Grails,并对所使用的Urlmapping一窍不通。 我在建gTunes商店,就像我之前的许多人一样 这本书让我在以下位置更改默认映射: class UrlMappings { static mappings = { "/"(controller:"store") } } 在“存储”的默认操作呈现的表单上,有以下代码: <div id="registerPane"> Need

我正在学习《权威指南》(第二版)中的Grails,并对所使用的Urlmapping一窍不通。
我在建gTunes商店,就像我之前的许多人一样

这本书让我在以下位置更改默认映射:

  class UrlMappings {
      static mappings = {
         "/"(controller:"store")
     }
   }
在“存储”的默认操作呈现的表单上,有以下代码:

<div id="registerPane">
        Need an account? 
        <g:link controller="user" action="register">Signup now</g:link> 
        to start your own personal Music collection!
</div>

需要账户吗?
现在注册
开始你自己的个人音乐收藏!
单击,服务器返回消息“请求的资源(/gTunes/user/register)不可用。”

我在NetBeansProjects\gTunes\grails app\views\user中有一个register.gsp

如果我将UrlMappings更改为其原始版本,请单击原始主页中的StoreController,然后单击SignUp it works。
所以问题在于书中指定的映射。我找到了第一版的勘误表,但没有找到第二版。

您的URL映射似乎不完整。应该是:

class UrlMappings {
      static mappings = {

         "/"(controller:"store")
         "/$controller/$action/$id?{
            constraints{
            }
       }
     }
   }

对不起,错过了一个?行动后:

    class UrlMappings {
      static mappings = {

         "/"(controller:"store")
         "/$controller/$action?/$id?"{
            constraints{
            }
       }
     }
   }

这本书中没有,但这里的解决方案解决了这个问题。这本书显然使用了grails的1.1版本。

[groovyc]C:\..\NetBeansProjects\gTunes\grails-app\conf\UrlMappings.groovy:6:除了“\n”之外,不需要任何东西;不管怎样,在第6行第37列,我都知道了。[groovyc]“/$controller/$action/$id?{[groovyc]^[groovyc][groovyc]1错误编译错误:编译失败类UrlMappings{static mappings={”/(controller:“store”)“/$controller/$action?/$id?{constraints}仍然需要学习1个字符的区别,但这就是Grails的全部,我认为,写得少,做得多…txs