grails - 我的 Controller 中无法访问域类

标签 grails groovy grails-domain-class grails-controller

我是Grails和groovy的新手。
我创建了一个域类

\grails-app\domain\Abc

现在我在中创建了一个 Controller
\grails-app\controllers\myapp\myController

那样,当我创建一个对象时,它会显示错误。
def Abc obj = new Abc

我得到的错误是
unable to resolve class Abc 

我尝试导入,但也没有显示。我在grails 1.3.7和IntelliJ IDEA 10.0.2中工作
谢谢

最佳答案

确保每个类的位置与类和包声明一致。

I created a domain class

\grails-app\domain\Abc


这个课应该看起来像这样
class Abc {
    // implementation omitted
}
确保没有包声明,因为基于位置,该类应位于默认包中(这实际上是一种不好的做法)。理想情况下,您应该将此类放入包中,然后将源文件移动到与包名称相对应的\grails-app\domain子目录中。

Now i created a controller in

\grails-app\controllers\myapp\myController


这个课应该看起来像这样
package myapp
  
class myController {
    // implementation omitted
}
注意,该类应以小写的“m”命名,因为这是文件命名的方式。标准的Java / Groovy命名约定规定,类应以大写字母开头。

In that, when i created an object it shows error.

def Abc obj = new Abc
此代码有两个问题:
  • 将类型定义为defAbc,但不能同时使用
  • 您缺少一些括号

  • 尝试以下方法:
    Abc obj = new Abc()
    

    关于grails - 我的 Controller 中无法访问域类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5536625/

    相关文章:

    grails - Grails 中如何覆盖外部配置文件中的配置变量,以便依赖于该变量的变量也被更新?

    hibernate - Grails 升级到 3.3.x : Cannot access persistentEntity. relationshipMap 和 persistentEntity.hasOneMap with grails 3.3.5

    grails - 在Grails中安装war文件时运行脚本

    grails - 将消息作为其他消息的参数

    maven - 在 Jenkins 管道中解析 pom.xml 文件

    Jenkins 管道 : Try/catch inside a retry block

    grails - 这是在静态映射 block 中访问Grails配置的安全方法吗?

    grails - Grails错误PatchedDefaultFlushEventListener

    grails - Grails-无法创建类[QuartzGrailsPlugin]的新实例!

    spring - Grails和Oauth2 Spring安全性