Запрос встроенных документов в документе с помощью MongoMapper

Каков хороший шаблон для запроса встроенных документов в документ? Например, в моем документе User есть встроенный документ предупреждений. Если я хочу узнать, есть ли у данного пользователя предупреждение с именем, я могу сделать это двумя способами, насколько я могу судить - в памяти a la

alert = current_user.alerts.select {| a | a.name == params [: name]}. first

или через фактический интерфейс документа a la (обратите внимание, что я не уверен на 100%, что это семантически корректно, но вы поняли):

Пользователь. где ('alerts.name' => params [: name],: id => current_user.id) .first

ДОЛЖЕН быть лучший способ, что-то вроде

current_user.alerts.where (: name => params [: name])

возможно? Или, может быть, я просто не думаю о проблеме, верно?

6
задан Brad Heller 25 May 2011 в 16:27
поделиться