рельсы Поиск и обновление записи - PullRequest
2 голосов
/ 15 ноября 2010

У меня есть модель:

ChatStatus со следующими полями (ID, user_id, status, thread_id)

Что я хочу сделать, это обновить статус пользователя с «непрочитанный» дочитать '

Что мне нужно сделать, это:

@chat = current_user.chats.where(:thread_id => 23)

23 из сообщения AJAX.Затем я должен сделать:

@chat.status = 'read'
@chat.save

Это дважды попадает в базу данных.Мне интересно, есть ли способ сделать все это в запросе к базе данных?Что-то вроде:

@chat = current_user.chats.where(:thread_id => 23).status = 'read'

Спасибо

1 Ответ

2 голосов
/ 15 ноября 2010

Я думаю, что это синтаксис, который вы ищете:

current_user.chats.where(:thread_id => 23).update_all(:status => 'read')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...