Heim >Backend-Entwicklung >PHP-Tutorial >Laravel Eloquent ORM in Bangla-Teillöschungsmodellen)

Laravel Eloquent ORM in Bangla-Teillöschungsmodellen)

DDD
DDDOriginal
2025-01-16 20:05:09245Durchsuche

Laravel Eloquent ORM in Bangla Part-Deleting Models)

Im Folgenden werden verschiedene Methoden zum Löschen von Datensätzen aus der Datenbank mit Laravel Eloquent ORM beschrieben. Es bietet eine einfache und effiziente Möglichkeit, Daten zu löschen.

1. Einen einzelnen Datensatz löschen:

delete()Methode mit:

Ein bestimmter Datensatz kann mit der Methode

delete() aus der Datenbank gelöscht werden.

<code class="language-php">use App\Models\Post;

// রেকর্ড খুঁজে বের করুন
$post = Post::find(1);

// রেকর্ড মুছে ফেলুন
$post->delete();</code>

Denken Sie daran:Nach dem Löschen befindet sich der Datensatz nicht mehr in der Datenbank.

2. Mehrere Datensätze löschen:

Verwendung der

-Methode mit der wheredelete()-Klausel:

Um mehrere Datensätze zu löschen, verwenden Sie die Methode where mit der Klausel delete().

<code class="language-php">use App\Models\Post;

// 'draft' স্ট্যাটাসের সকল রেকর্ড মুছে ফেলুন
Post::where('status', 'draft')->delete();</code>

3. Mit der destroy()-Methode:

Mit der Methode

destroy() können ein oder mehrere Datensätze gelöscht werden.

<code class="language-php">use App\Models\Post;

// একক রেকর্ড মুছে ফেলুন
Post::destroy(1);

// একাধিক রেকর্ড মুছে ফেলুন
Post::destroy([2, 3, 4]);</code>

Denken Sie daran: Die Methode destroy() löscht Datensätze direkt mithilfe des Primärschlüssels.

4. Modellereignis verwenden:

Modellereignisse werden ausgelöst, wenn Eloquent-Modelle gelöscht werden.

  • Ereignis: Wird ausgelöst, bevor der Datensatz gelöscht wird.deleting
  • Ereignis: Wird ausgelöst, nachdem der Datensatz gelöscht wurde.deleted
<code class="language-php">class Post extends Model
{
    protected static function booted()
    {
        static::deleting(function ($post) {
            // মুছে ফেলার আগে করণীয় কাজ
            Log::info('Post is being deleted: ' . $post->id);
        });

        static::deleted(function ($post) {
            // মুছে ফেলার পর করণীয় কাজ
            Log::info('Post deleted: ' . $post->id);
        });
    }
}</code>

5. Vorläufige Löschungen:

Was ist vorläufiges Löschen?

Vorläufig gelöschte Datensätze werden nicht physisch gelöscht, indem ein Zeitstempel an die Spalte

angehängt wird.deleted_at

So verwenden Sie das vorläufige Löschen:

Das

-Merkmal muss dem SoftDeletes-Modell hinzugefügt werden.

<code class="language-php">use App\Models\Post;

// রেকর্ড খুঁজে বের করুন
$post = Post::find(1);

// রেকর্ড মুছে ফেলুন
$post->delete();</code>

Vorläufiges Löschen:

<code class="language-php">use App\Models\Post;

// 'draft' স্ট্যাটাসের সকল রেকর্ড মুছে ফেলুন
Post::where('status', 'draft')->delete();</code>

Vorläufig gelöschte Datensätze wiederherstellen:

<code class="language-php">use App\Models\Post;

// একক রেকর্ড মুছে ফেলুন
Post::destroy(1);

// একাধিক রেকর্ড মুছে ফেলুন
Post::destroy([2, 3, 4]);</code>

Löschen erzwingen:

<code class="language-php">class Post extends Model
{
    protected static function booted()
    {
        static::deleting(function ($post) {
            // মুছে ফেলার আগে করণীয় কাজ
            Log::info('Post is being deleted: ' . $post->id);
        });

        static::deleted(function ($post) {
            // মুছে ফেলার পর করণীয় কাজ
            Log::info('Post deleted: ' . $post->id);
        });
    }
}</code>

Vorläufig gelöschte Datensätze abfragen:

  • withTrashed(): Gibt sowohl vorläufig gelöschte als auch nicht gelöschte Datensätze zurück.
  • onlyTrashed(): stellt nur vorläufig gelöschte Datensätze wieder her.

6. Direktes Löschen aus der Datenbank:

Datensätze können mithilfe der DBFassade von Laravel direkt mit SQL-Abfragen gelöscht werden.

<code class="language-php">use Illuminate\Database\Eloquent\SoftDeletes;

class Post extends Model
{
    use SoftDeletes;

    protected $dates = ['deleted_at'];
}</code>

Das obige ist der detaillierte Inhalt vonLaravel Eloquent ORM in Bangla-Teillöschungsmodellen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn