#grails #groovy
#grails #groovy
Вопрос:
У меня есть приложение Grails. Я хочу использовать значение из класса контроллера Grails (скажем, MyController) внутри класса в src / groovy / MyClass.groovy
Как я могу передать значение из класса контроллера Grails в этот класс? Я не смог найти ничего подходящего.
Я попробовал это:
class MyController {
def name = "myapp"
}
Class MyClass{
def username = MyController.name
}
Пожалуйста, поправьте меня. Спасибо
Ответ №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
}
Я надеюсь, что это поможет.