Допустим, у меня есть некоторые простые классы для твиттер-как приложение:Сортировка ссылается список в Граалей
- пользователя
- Опубликовать hasMany сообщения
пользователем, и после belongsTo а, пользователь.
Теперь, я пытаюсь получить список сообщений для определенного пользователя в порядок даты.
Я знаю, что я могу получить список всех сообщений (для всех пользователей) по:
def posts = Post.list([sort: 'dateCreated', order: 'asc', max:10])
Но ограничить его к моему конкретному пользователю мне нужно ссылаться на пользователя я хочу, и я, предполагая, что я необходимо перейти от статического вызова на что-то вроде этого, где я ссылку на пользователя первый:
def user = User.findByUserId(userId)
def posts = user.posts
так что теперь будет возвращать список всех сообщений для этого пользователя, но как организовать этот список, так что они заказывается так: [sort: 'dateCreated', order: 'asc', max: 10], чтобы получить первые 10 в правильном порядке?
Или я просто об этом ошибаюсь?
Это хорошо, но все равно я могу ограничить извлечение БД до 10 штук? Или мне нужно восстановить все, а затем манипулировать в памяти? – Stevo
I _think_ вы должны использовать 'GORM' для извлечения сообщений, используя что-то похожее на Post.findByUser (user, [sort: 'dateCreated', order: 'asc', max: 10]). См. Http://grails.org/doc/1.1.x/ref/Domain%20Classes/findAllBy.html –
Sweeeeet! Защиты пользователя = User.findByUserId ('стив') Защиты сообщения = Post.findAllByUser (пользователь, [сортировать: 'dateCreated', заказ: 'по возрастанию', не более: 10]) Спасибо! – Stevo