Heim >Backend-Entwicklung >PHP-Tutorial >Laravel Eloquent ORM in Bangla-Teillöschungsmodellen)
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: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 derwhere
delete()
-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:
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.
deleting
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? angehängt wird.deleted_at
-Merkmal muss dem SoftDeletes
-Modell hinzugefügt werden.
<code class="language-php">use App\Models\Post; // রেকর্ড খুঁজে বের করুন $post = Post::find(1); // রেকর্ড মুছে ফেলুন $post->delete();</code>
<code class="language-php">use App\Models\Post; // 'draft' স্ট্যাটাসের সকল রেকর্ড মুছে ফেলুন Post::where('status', 'draft')->delete();</code>
<code class="language-php">use App\Models\Post; // একক রেকর্ড মুছে ফেলুন Post::destroy(1); // একাধিক রেকর্ড মুছে ফেলুন Post::destroy([2, 3, 4]);</code>
<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>
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 DB
Fassade 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!