Datamapper - id 是否包含在结果集中

发布于 2024-11-29 01:17:32 字数 306 浏览 4 评论 0原文

知道当前选择 ID 是否已经是 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

What's the most elegant way of knowing if the current selection ID is already part of the Datamapper results, without iterating through all of the results and building an Array?

    @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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

掌心的温暖 2024-12-06 01:17:32

current_user.items.detect { |i| } i.id == Selection.id } 将返回一个布尔值(true/false),指示选择 ID 是否包含在 current_user.items 集合中。

current_user.items.detect { |i| i.id == selection.id } will return a boolean (true/false) indicating whether the selection id is included in the current_user.items collection.

源来凯始玺欢你 2024-12-06 01:17:32

current_user.items.delete(selection.id)

您也可以使用它,如果存在 else 将返回 nil,它将从数组中返回选择 id。

current_user.items.delete(selection.id)

this also you can use which will return the selection id from the array if presence else would return nil.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文