Heim >PHP-Framework >Laravel >Datenbankabfragen und Modellbeziehungen in Laravel: Datenmanipulation elegant handhaben
Datenbankabfragen und Modellbeziehungen in Laravel: Datenoperationen elegant handhaben
Einführung:
Datenbankoperationen sind ein unvermeidlicher Bestandteil der Webentwicklung, und Laravel bietet als einfaches, elegantes und flexibles Entwicklungsframework umfangreiche Datenbankabfragen und Werkzeuge zur Verarbeitung von Modellbeziehungen. Mit Laravel können wir Datenbankoperationen bequemer durchführen und über Modellbeziehungen Verbindungen zwischen Daten herstellen. In diesem Artikel wird die Methode zur eleganten Verarbeitung von Datenoperationen in Laravel unter zwei Aspekten vorgestellt: Datenbankabfrage und Modellbeziehung, um den Lesern zu helfen, Laravel besser für die Entwicklung zu nutzen.
1. Datenbankabfrage
// Alle Benutzer abfragen
$users = DB::table('users')->get();
// Das angegebene Feld abfragen und in absteigender Reihenfolge nach ID sortieren
$ Users = DB ::table('users')->select('name', 'email')->orderBy('id', 'desc')->get();
// Alter abfragen größer oder gleich 18 Benutzer im Alter
$users = DB::table('users')->where('age', '>=', 18)->get();
// Abfrage Benutzerdaten pro Seite
$users = DB::table('users')->paginate(10);
namespace AppModels;
use IlluminateDatabaseEloquentModel;
class User erweitert Model
{
protected $table = 'users';
}
Dann können die Daten sein Durch das Modell verarbeitet Abfrage und Operation:
// Alle Benutzer abfragen
$users = User::all();
// Das angegebene Feld abfragen und in absteigender Reihenfolge nach ID sortieren
$users = User::select( 'name', 'email' )->orderBy('id', 'desc')->get();
// Benutzer abfragen, die 18 Jahre oder älter sind
$users = User::where(' age', '>= ', 18)->get();
// Benutzerdaten nach Paginierung abfragen
$users = User::paginate(10);
2 Modellbeziehung
In der tatsächlichen Entwicklung, Es gibt häufig bestimmte Unterschiede zwischen Datenassoziationsbeziehungen, und Laravel bietet eine Vielzahl von Methoden zum Umgang mit Beziehungen zwischen Modellen, z. B. Eins-zu-Eins, Eins-zu-Viele, Viele-zu-Viele usw. Das Folgende ist eine Einführung am Beispiel von Eins-zu-Viele.
hasMany
in der Modellklasse, um eine Eins-zu-viele-Zuordnung zu definieren: hasMany
方法定义一对多关联关系:namespace AppModels;
use IlluminateDatabaseEloquentModel;
class User extends Model
{
protected $table = 'users'; public function posts() { return $this->hasMany(Post::class); }
}
$user->posts
}
$user->posts
abrufen: $posts = $user->posts;
Zugehörige Datenfilterung und -sortierung
Wir können auch zugehörige Methoden verwenden, um Datenfilter- und -sortierungsvorgänge durchzuführen. Rufen Sie beispielsweise die fünf besten Beiträge des Benutzers ab und sortieren Sie sie in absteigender Reihenfolge nach Veröffentlichungszeitpunkt:
$user = User::find(1);
Das obige ist der detaillierte Inhalt vonDatenbankabfragen und Modellbeziehungen in Laravel: Datenmanipulation elegant handhaben. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!