2015-11-30 4 views
17

Laravel 5.1には、雄弁なモデルオブジェクトがソフト削除されているかどうかを確認する良い方法がありますか?私はデータの選択については言及していませんが、一度私はオブジェクトを持っています。 Thing::withTrashed()->find($id)Eloquentでローがソフト削除されているかどうかを確認するには?

は、これまでのところ私が見ることができる唯一の方法は、私は例を可能にする任意の関連する方法in the APIが表示されていない

if ($thing->deleted_at !== null) { ... } 

ある

if ($thing->isDeleted()) { ... } 

答えて

35

ちょうど私が間違っているAPIで探していた実現。 Modelクラスにはこれがありませんが、私のモデルで使用するSoftDelete traitにはtrashed()メソッドがあります。

だから私は多分5.2を

if ($thing->trashed()) { ... } 
+0

を書くことができますが異なっているが、私はこれを試してみました、それが動作しませんでした。 ($ thing == null) ' –

+0

@ ZacharyWeixelbaum項目を取得するために' withTrashed() 'を使いましたか?それとも、私はあなたがソフトを削除したところで$ thingを取得しようとしたとき、Laravelはnullを返しました。質問に記載されている?そうしないと、削除されたレコードは取得されません。 – DisgruntledGoat

+0

あなたはそうです、私はそれを見ませんでした。 –

関連する問題