【问题标题】:Pass value from grails controller to a class inside src/groovy将值从 grails 控制器传递到 src/groovy 中的类
【发布时间】:2014-08-18 21:35:45
【问题描述】:

我有一个 Grails 应用程序。我想在 src/groovy/MyClass.groovy 的一个类中使用来自 Grails 控制器类(比如 MyController)的值

如何将 Grails 控制器类的值传递给这个类?我找不到任何相关的东西。

我试过了:

class MyController {
def name = "myapp"
}

Class MyClass{
def username = MyController.name
}

请纠正我。谢谢

【问题讨论】:

    标签: grails groovy


    【解决方案1】:

    在不知道自己在做什么的情况下很难确定,但您可能希望将该值作为参数传递给 MyClass 中的方法,并且您可能不希望该值成为控制器类中的字段。

    class MyController {
        def someControllerAction() {
            def name = // I don't know where you are
                       // getting this value, but you got it from somewhere
    
            def mc = new MyClass()
            mc.someMethod(name)
            // ...
        }
    }
    
    class MyClass {
        def someMethod(String name) {
            // do whatever you want to do with the name
        }
    }
    

    或者您可以将值作为构造函数参数传递:

    class MyController {
        def someControllerAction() {
            def name = // I don't know where you are
                       // getting this value, but you got it from somewhere
    
            def mc = new MyClass(name: name)
            // ...
        }
    }
    
    class MyClass {
        def name
    }
    

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多