Datamapper - содержится ли идентификатор в наборе результатов - PullRequest
0 голосов
/ 11 августа 2011

Какой самый элегантный способ узнать, является ли текущий идентификатор выбора уже частью результатов Datamapper, без перебора всех результатов и построения массива?

    @saved_item = Array.new
    current_user.items.all.each do |item|
            @saved_items.push(item.id)
    end

    if (@saved_items.include?(selection.id))
            true
    else
            false
    end

Ответы [ 2 ]

1 голос
/ 11 августа 2011

current_user.items.detect { |i| i.id == selection.id } вернет логическое значение (true / false), указывающее, включен ли идентификатор выбора в коллекцию current_user.items.

0 голосов
/ 24 августа 2011

current_user.items.delete (selection.id)

это также вы можете использовать, который вернет идентификатор выбора из массива, если присутствие else вернет nil.

...