1. ホーム
  2. ruby-on-rails

[解決済み] レイルで破壊されたばかりの記録かどうかを確認する

2023-03-23 01:43:08

質問

ということは

record.new_record?

新しいかどうかを確認する

何か新しいものが出ていないか確認したい

record = some_magic
record.destroy
record.is_destroyed? # => true

といったところでしょうか。destroyingがオブジェクトをフリーズさせるのは知っているので、frozen?は一応機能しますが、このタスクのために何か明示的なものがあるのでしょうか?

どのように解決するのですか?

こうすればいいのです。

Record.exists?(record.id)

しかし、それは常に必要でないデータベースへのヒットを行うでしょう。私が知っている唯一の他の解決策は、theIVが言及したようにコールバックを行うことです。

attr_accessor :destroyed
after_destroy :mark_as_destroyed
def mark_as_destroyed
  self.destroyed = true
end

そして、チェックするのは record.destroyed .