finished_at
というテーブルにカスタムの日付列を作成しました。 finished_at
列のNULL
値がデフォルトで取得されていない持ってソフト削除機能を複製する方法は?
- 行:私はsoft deletingようの機能を複製します。
NULL
の値を持つ行を取得する場合は、withFinished()
をクエリに追加します(ソフト削除の方法はwithTrashed()
と同じです)。
どうすればいいですか?
finished_at
というテーブルにカスタムの日付列を作成しました。 finished_at
列のNULL
値がデフォルトで取得されていない持ってソフト削除機能を複製する方法は?
NULL
の値を持つ行を取得する場合は、withFinished()
をクエリに追加します(ソフト削除の方法はwithTrashed()
と同じです)。どうすればいいですか?
モデルクラスでは、SoftDeletes
特性を使用して定数を定義し、laravelにカスタムのソフト削除列名を通知します。あなたがwithFinished
代わりのwithTrashed
を使用したい場合は
class MyModel extends Model
{
use SoftDeletes;
const DELETED_AT = 'finished_at';
.....
}
、あなた自身のCustomSoftDeletes
形質を作成し、それにLaravelのSoftDeletes
形質を使用することができます。そしてwithFinished
を作成して、withTrashed
を呼び出します。しかし、私は、それが単なる実装の詳細なので、そのメソッドの名前を変更する必要があるという点については何の示唆もしていません。
あなたのModel
のような変更が必要です。
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Eloquent\Model;
class Test extends Model
{
use SoftDeletes; //<--- use the softdelete traits
protected $dates = ['finished_at']; //<--- new field to be added in your table
/**
* The database table used by the model.
*
* @var string
*/
protected $table = 'test';
}
Laravel源が開いています。あなたが適切なクエリで来ることができない場合は、あなたが自分自身を制限することを妨げるものは何ですか? –