MVC в Groovy / Граальс - PullRequest
       24

MVC в Groovy / Граальс

0 голосов
/ 29 января 2010

Я новичок в заводной. Как мы можем вызывать доменные методы из контроллера в Grails.

Контроллер:

def results = User.fetch_results

Домен пользователя:

def fetch_results {
    def users = this.get(1)
}

Извините, если приведенный выше код неверен, мне нужно знать, как получить доступ к методам домена с контроллера.

спасибо.


Мой код такой

UserController:

def results = User.addUser 

Домен пользователя:

def addUser {
    def user = new User()
    user.id = 1
    user.publication_name = pub_name
    user.publication_desc =  ""
    user.edit_date = new Date()
    user.save()
    }
}

Я пробовал с приведенным выше кодом, но получаю ошибки. как мы можем вызвать метод addUser из контроллера?

спасибо.

Ответы [ 3 ]

1 голос
/ 08 февраля 2010

Вам нужно сделать метод статическим.

class User {

    def static addUser() {
        def user = new User()
        ...
        user.save()
    }
}

Затем обязательно импортируйте объект User в свой контроллер.

0 голосов
/ 29 января 2010

Предполагается, что вы хотите получить список всех пользователей, а класс вашего домена определен как Пользователь

 def userList=User.list()

Предполагается, что вы хотите получить доступ к определенному полю на номер пользователя 2

 def theAddress=User.get(1).address

Обратите внимание, что предполагается, что вы импортировали все пакеты классов вашего домена.

0 голосов
/ 29 января 2010

Я думаю

User usr = User.get(1) // or User.findBy... etc

в вашем контроллере должно делать то, что вы хотите. Просто посмотрите документацию GORM из Grails Docs , они действительно хороши. Если вы новичок в Groovy, но не в Java, вы должны проверить документацию Groovy , прежде чем почувствовать язык Groovy.

...