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

Laravel Eloquent ORM in Bangla-Teillöschungsmodellen)

DDD
Freigeben: 2025-01-16 20:05:09
Original
245 Leute haben es durchsucht

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>
Nach dem Login kopieren
Nach dem Login kopieren

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>
Nach dem Login kopieren
Nach dem Login kopieren

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>
Nach dem Login kopieren
Nach dem Login kopieren

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>
Nach dem Login kopieren
Nach dem Login kopieren

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>
Nach dem Login kopieren
Nach dem Login kopieren

Vorläufiges Löschen:

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

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

Vorläufig gelöschte Datensätze wiederherstellen:

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

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

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

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>
Nach dem Login kopieren
Nach dem Login kopieren

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>
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage