gpt4 book ai didi

mysql - 仅当记录存在于 Rails 中时,如何删除它?

转载 作者:行者123 更新时间:2023-11-29 03:53:53 25 4
gpt4 key购买 nike

我想在删除帖子本身时删除我为帖子创建的 token 。但是如果 token 不存在,我不希望 Rails 抛出错误并停止执行。

现在,这就是我的处理方式。我认为这段代码太笨拙了。有什么巧妙的方法可以实现同样的目的吗?

DownloadToken.find_by_post_id(post.id).destroy unless DownloadToken.find_by_post_id(@post.id).nil?

最佳答案

这是一种方式(旧语法)

DownloadToken.find_by_post_id(post.id).try(:destroy)

rails 中更新的语法:

DownloadToken.find_by(id: post.id).try(:destroy)

使用 Ruby 的安全导航运算符:

DownloadToken.find_by(id: post.id)&.destroy

关于mysql - 仅当记录存在于 Rails 中时,如何删除它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28039361/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com