Inhaltsverzeichnis
1. Erstellen von Modellen und Migrationen
2. Grundlegende CRUD -Operationen
Alle Datensätze abrufen
Finden Sie einen Datensatz per ID
Erstellen Sie einen neuen Rekord
Aktualisieren Sie einen Datensatz
Einen Datensatz löschen
3.. Mit eloquenten Beziehungen
Definieren Sie eine Beziehung (z. B. Post gehört dem Benutzer)
4. Mit eloquent einfragen
Bereiche (wiederverwendbare Abfragen)
5. Schutz der Massenzuordnung
6. Soft Deletes (optional)
7. Zubehör und Mutatoren
Mutator (Set)
Accessor (get)
Heim PHP-Framework Laravel Wie man in Laravel eloquent verwendet

Wie man in Laravel eloquent verwendet

Aug 21, 2025 pm 02:30 PM
laravel eloquent

Modelle erstellen und Migration: Verwenden Sie PHP Artisan Make: Model Post -m, um Modelle und Migrationsdateien zu generieren, die Tabellenstruktur zu definieren und PHP -Artisan -Migration auszuführen. 2. Grundlegende CRUD -Operationen: Verwenden Sie Post :: All (), Find (), Create (), Save () und Delete (), um Daten abzufragen, zu erstellen, zu aktualisieren und zu löschen. 3. Verwenden Sie die eloquente Assoziation: Definieren Sie die Beziehungen zwischen Hörbol und Hasmany im Modell und verwenden Sie die Methode mit (), um die zugehörigen Daten vorzuladen, um N 1 -Abfrageprobleme zu vermeiden. 4. Eloquent Abfrage: Verwenden Sie den Abfragekonstruktor, um Anrufe wie Wo, OrderBy und andere Methoden zu ketten und die Abfragelogik durch lokale Scopepublished wiederverwenden; 5. Batch -Zuordnung Schutz: Setzen Sie $ fillbar oder $ bewacht in den Modellattributen, um eine unerwartete Zuordnung zu verhindern; 6. Weichdeletion: Führen Sie das Merkmal von Softdeletes ein und fügen Sie der Migration Softdeletes () hinzu, verwenden Sie Delete () und restore (), um die weiche Löschung und Wiederherstellung zu steuern. 7. Zubehör und Modifikatoren: Verarbeiten Sie Datenformate automatisch, wenn Sie Attribute durch settitleattribute und gettitleattribute einstellen oder erhalten. Reloquent interagiert mit der Datenbank über das Modell, so dass Entwickler Daten effizient bedienen können, ohne native SQL zu schreiben. Es wird empfohlen, dass jede Tabelle einem Modell entspricht, die Assoziationsbeziehung vernünftigerweise definiert und die von eloquent bereitgestellten Funktionen für die vollständigen Datenoperationen voll ausnutzt und letztendlich eine klare und wartbare Codestruktur erreicht.

Wie man in Laravel eloquent verwendet

Eloquent ist das integrierte ORM von Laravel (Object-Relational Mapper), mit dem Sie mit Ihrer Datenbank mithilfe der PHP-Syntax mit RAW-SQL mit Ihrer Datenbank interagieren können. Es ist mächtig, ausdrucksstark und anfängerfreundlich, sobald Sie die Grundlagen verstanden haben. Hier erfahren Sie, wie Sie in Laravel equent effektiv einsetzen.

Wie man in Laravel eloquent verwendet

1. Erstellen von Modellen und Migrationen

Jede Datenbanktabelle verfügt über ein entsprechendes beredtes Modell. Um ein Modell zusammen mit einer Migration zu erstellen, rennen Sie:

 Php Artisan Make: Model Post -m

Dies schafft:

Wie man in Laravel eloquent verwendet
  • app/Models/Post.php (das Modell)
  • database/migrations/xxxx_xx_xx_create_posts_table.php (die Migration)

Definieren Sie in der Migrationsdatei Ihre Tabellenstruktur:

 Schema :: Create ('Beiträge', Funktion (Blueprint $ Tabelle) {
    $ table-> id ();
    $ table-> string ('title');
    $ table-> text ('Inhalt');
    $ table-> fremdId ('user_id')-> conneNed ();
    $ table-> timestemps ();
});

Führen Sie die Migration aus:

Wie man in Laravel eloquent verwendet
 PHP Artisan migrieren

Jetzt können Sie das Post verwenden, um mit der posts -Tabelle zu interagieren.

HINWEIS: Wenn sich Ihr Modell in einem Ordner wie Models befindet, verweisen Sie es korrekt oder aktualisieren Sie den Standard -Namespace in config/auth.php bei Bedarf.


2. Grundlegende CRUD -Operationen

Sobald Ihr Modell eingerichtet ist, können Sie grundlegende Vorgänge ausführen.

Alle Datensätze abrufen

 $ posts = post :: alle ();

Finden Sie einen Datensatz per ID

 $ post = post :: find (1);
// oder werfen Sie eine Ausnahme, wenn Sie nicht gefunden werden
$ post = post :: findorFail (1);

Erstellen Sie einen neuen Rekord

 Post :: Create ([
    'title' => 'mein erster Beitrag',
    'Inhalt' => 'Hallo Welt',
    'user_id' => 1,,
]);

Oder manuell:

 $ post = new post ();
$ post-> title = 'ein anderer Beitrag';
$ post-> content = 'mehr Inhalt';
$ post-> user_id = 1;
$ post-> save ();

Aktualisieren Sie einen Datensatz

 $ post = post :: find (1);
$ post-> title = 'aktualisierter Titel';
$ post-> save ();

Oder Massenaktualisierung verwenden:

 Post :: where ('id', 1)-> update (['title' => 'aktualisiert']);

Einen Datensatz löschen

 $ post = post :: find (1);
$ post-> delete ();

// oder direkt löschen
Beitrag :: zerstören (1);

3.. Mit eloquenten Beziehungen

Eroquent macht die Definition von Beziehungen zwischen Modellen einfach.

Definieren Sie eine Beziehung (z. B. Post gehört dem Benutzer)

Im Post :

 Public Function User ()
{
    $ this->
}

Im User :

 öffentliche Funktion Posts ()
{
    $ this-> hasmany zurückgeben (Post :: class);
}

Jetzt können Sie auf verwandte Daten zugreifen:

 $ post = post :: mit ('user')-> find (1);
echo $ post-> user-> name; // Zugriff auf den Autor zugreifen

$ user = user :: find (1);
foreach ($ user-> posts als $ post) {
    echo $ post-> title;
}

Verwenden Sie with() mit eifrigen Lastbeziehungen und vermeiden Sie N 1 Abfrageprobleme.


4. Mit eloquent einfragen

Beredliche Modelle erweitern den Query Builder, sodass Sie Methoden anketten können:

 $ publishedPosts = post :: wo ('Status', 'veröffentlicht'))
    -> WHERE ('Created_at', '>', jetzt ()-> Untertage (7))
    -> orderBy ('created_at', 'Desc')
    -> get ();

Bereiche (wiederverwendbare Abfragen)

Definieren Sie einen lokalen Bereich in Ihrem Modell:

 öffentliche Funktion Scopepublished ($ Query)
{
    $ query-> wo ('Status', 'veröffentlicht');
}

Verwenden Sie es:

 $ posts = post :: veröffentlicht ()-> get ();

5. Schutz der Massenzuordnung

Definieren Sie die füllbaren oder geschützten Felder, um create() oder update() sicher zu verwenden.

In Ihrem Modell:

 protected $ filable = ['title', 'content', 'user_id'];

Oder alternativ:

 geschützt $ bewacht = []; // lässt alles, aber weniger sicher

6. Soft Deletes (optional)

Aufzeichnungen zu "löschen", ohne sie aus der Datenbank zu entfernen:

  • Verwenden Sie use Illuminate\Database\Eloquent\SoftDeletes; zu Ihrem Modell.
  • $table->softDeletes(); in Ihrer Migration.
  • Verwenden Sie dann ->delete() -es legt deleted_at fest, anstatt die Zeile zu entfernen.

Stellen Sie einen Soft Deleted Record wieder her:

 $ post = post :: withTrashed ()-> find (1);
$ post-> restore ();

7. Zubehör und Mutatoren

Ändern Sie Daten, wenn Sie Attribute erhalten oder festlegen.

Mutator (Set)

 öffentliche Funktion settitleattribute ($ value)
{
    $ this-> attribute ['title'] = ucfirst ($ value);
}

Accessor (get)

 Öffentliche Funktion gettitleattribute ($ value)
{
    ucfirst ($ value) zurückgeben;
}

Jedes Mal, wenn Sie title erhalten oder setzen, wird er kapitalisiert.


Eloquent macht die Arbeit mit Datenbanken in Laravel intuitiv und sauber. Beginnen Sie mit Modellen und grundlegenden Abfragen und verwenden Sie dann schrittweise Beziehungen, Bereiche und Zubehör, wenn Ihre App wächst. Meistens brauchen Sie keine rohe SQL.

Denken Sie im Grunde genommen nur daran: Ein Modell pro Tabelle, Definitionsbeziehungen und lass eloquent das schwere Heben machen.

Das obige ist der detaillierte Inhalt vonWie man in Laravel eloquent verwendet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Stock Market GPT

Stock Market GPT

KI-gestützte Anlageforschung für intelligentere Entscheidungen

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Wie man in Laravel eloquent verwendet Wie man in Laravel eloquent verwendet Aug 21, 2025 pm 02:30 PM

Modelle erstellen und Migration: Verwenden Sie PhPartisanMake: ModellPost-M, um Modelle und Migrationsdateien zu generieren, die Tabellenstruktur zu definieren und PhPartisanmigrate auszuführen. 2. Grundlegende CRUD -Operationen: Verwenden Sie Post :: All (), Find (), Create (), Save () und Delete (), um Daten abzufragen, zu erstellen, zu aktualisieren und zu löschen. 3. Verwenden Sie die eloquente Assoziation: Definieren Sie die Beziehungen zwischen Hörbol und Hasmany im Modell und verwenden Sie die Methode mit (), um die zugehörigen Daten vorzuladen, um N 1 -Abfrageprobleme zu vermeiden. V.

So verwenden Sie die Aufgabenplanung von Laravel So verwenden Sie die Aufgabenplanung von Laravel Aug 31, 2025 am 06:07 AM

Mit Laravels TaskScheduling-System können Sie Timing-Aufgaben über PHP definieren und verwalten, ohne den Server-Crontab manuell zu bearbeiten, nur eine Cron-Aufgabe hinzuzufügen, die dem Server einmal pro Minute ausgeführt wird: *CD/Path-to-Your-Project && PhPartiSeSule: Run >>/Dev/Dev/null2> & 1 und dann werden alle Tasks konfiguriert. 1. Definieren von Aufgaben können Befehls-, Anruf- oder Exec-Methoden verwenden, z. B. $ plan-

So erstellen Sie ein soziales Netzwerk mit Laravel So erstellen Sie ein soziales Netzwerk mit Laravel Sep 01, 2025 am 06:39 AM

Ja, youcancreateasocialNetworkwithlaravelByFollowingthesSteps: 1.SetUplaravelusedComposer, configurethe.envFile, EnableAuthenticationViabreeze/Jetstream/Verstärkung, AndrunMigrationsforSerManmanagement

Wie man mit polymorphen Beziehungen in Laravel arbeitet Wie man mit polymorphen Beziehungen in Laravel arbeitet Aug 25, 2025 am 10:56 AM

PolymorphicrelationshipSinlaravelallowamodellikeCompomentorimagetobelongTomultiplemodelsSuchaspost, Video, Ouserusingasinglease.2.DedatabaseSchemarequires {relation} _idandandcomputerable_typecolumns, exemplifictifydyTableable_idandcompommentable_typecoloNs, Exemplifictable, exemplifictabledy und entfaltet

So erstellen Sie ein Backend für mobile Apps mit Laravel So erstellen Sie ein Backend für mobile Apps mit Laravel Sep 02, 2025 am 08:34 AM

Um Laravel zum Erstellen eines mobilen Backends zu erstellen, muss zunächst das Framework installiert und die Datenbankumgebung konfiguriert werden. 2. Definieren Sie API -Routen in Routen/api.php und geben Sie eine JSON -Antwort mit dem Ressourcencontroller zurück. 3.. Implementieren Sie die API -Authentifizierung über Laravelsanctum, um Token für die mobile Speicherung und Authentifizierung zu generieren; 4. Überprüfen Sie den Dateityp beim Hochladen von Dateien und speichern Sie sie auf öffentlicher Festplatte und erstellen Sie Soft -Links für den externen Zugriff. 5. Die Produktionsumgebung erfordert HTTPS, setzen aktuelle Grenzwerte ein, konfigurieren CORs, führen Sie die API -Versionskontrolle durch und optimieren Sie die Fehlerbehandlung. Es wird außerdem empfohlen, API -Ressourcen, Paging-, Warteschlangen- und API -Dokumenten -Tools zu verwenden, um die Wartbarkeit und Leistung zu verbessern. Verwenden Sie Laravel, um einen Safe zu bauen,

Wie man eine Laravel -Anwendung internationalisiert Wie man eine Laravel -Anwendung internationalisiert Aug 22, 2025 pm 02:31 PM

Sprachdateien erstellen: Erstellen Sie Subdirektorien für jede Sprache (z. B. en, es) im Ressourcen-/Lang -Verzeichnis und fügen Sie Message.php -Datei hinzu, oder verwenden Sie die JSON -Datei, um die Übersetzung zu speichern. 2. Setzen Sie die Anwendungssprache: Lesen Sie den Anforderungsheader Akzeptieren Sie die Sprache über Middleware oder erkennen Sie die Sprache über das URL-Präfix, setzen Sie die aktuelle Sprache mit app ()-> setlocale () und registrieren Sie die Middleware in kernel.php. 3.. Verwenden Sie Übersetzungsfunktionen: Verwenden Sie __ (), trans () oder @lang in der Ansicht und verwenden Sie __ (), das Fallback unterstützt; 4. Supportparameter und Plural: Verwenden Sie Platzhalter in Übersetzungszeichenfolgen wie: n

Wie kämpfe ich Nachrichten in einer Datei in Laravel an? Wie kämpfe ich Nachrichten in einer Datei in Laravel an? Sep 21, 2025 am 06:04 AM

LaravelusesmonologtologMessagesViathelogfacade, withefaultLogStoredInstorage/logs/laravel.log.configurechannelsinconfig/logging.phptocontroloutput; thedefaultStackchannelaggatesMulthandleSlerslikesingle: WARNSLIKSLE:

So implementieren Sie eine 'Erinnerung mir' -Funktionalität in Laravel So implementieren Sie eine 'Erinnerung mir' -Funktionalität in Laravel Aug 31, 2025 am 08:53 AM

Stellen Sie sicher, dass es in der Benutzertabelle eine Spalte für remm_token gibt. Laravels Standardmigration enthält bereits dieses Feld. Wenn nicht, wird es durch Migration hinzugefügt; 2. Fügen Sie ein Kontrollkästchen mit Namen hinzu, erinnern Sie sich im Anmeldeformular, um die Option "Erinnere mich" anzugeben. 3. Übergeben Sie den Parameter Remember an die Auth :: Versuch () während der manuellen Authentifizierung, um eine anhaltende Anmeldung zu ermöglichen. 4. "Remember Me" dauert standardmäßig 5 Jahre und kann über das Remal_FOR -Konfigurationselement in config/auth.php angepasst werden. 5. Laravel ungültig für Erinnerung, wenn sich das Kennwort ändert oder Benutzer löscht. Es wird empfohlen, HTTPS zu verwenden, um die Sicherheit in der Produktionsumgebung zu gewährleisten. 6

See all articles