php artisan make:request StoreBlogPost
Analyse der grundlegenden Migrationen von Laravel
1. Die Migration erstellt Datentabellen und füllt Daten in der Seeder-Datenbank
Datenbankmigration ist wie eine Datenbank 版本控制
, sodass Ihr Team sie einfach ändern kann Teilen Sie die Datenbankstruktur der Anwendung
1.1 Erstellen Sie eine Migration
php artisan make:migration create_users_table --create=users php artisan make:migration add_votes_to_users_table --table=users //添加字段
Die neue Migrationsdatei wird im Verzeichnis database/migrations
abgelegt. Der Name jeder Migrationsdatei enthält einen Zeitstempel , damit Laravel
die Reihenfolge der Migrationen bestätigen kann.
Mit den Optionen --table
und --create
können Sie den Namen der Datentabelle angeben oder angeben, ob beim Ausführen der Migration eine neue Datentabelle erstellt wird.
1.2 Migrationsstruktur
Migrationsklassen enthalten normalerweise zwei Methoden: up
und down
. Die up
-Methode kann der Datenbank eine neue Datentabelle, ein neues Feld oder einen neuen Index hinzufügen, während die down
-Methode die umgekehrte Operation der up
-Methode ist. Sie können den Datenbankstrukturgenerator Laravel
in diesen beiden Methoden verwenden, um Datentabellen zu erstellen und zu ändern.
1.2.1 Eine Datentabelle erstellen
/** * 运行数据库迁移 * * @return void */ public function up() { Schema::create('flights', function (Blueprint $table) { $table->increments('id'); $table->string('name')->comment('字段注解'); $table->string('airline')->comment('字段注解'); $table->timestamps(); }); } /** * 回滚数据库迁移 * * @return void */ public function down() { Schema::drop('flights'); }
1.2.2 Felder zur Tabelle hinzufügen
Datentabelle, Feld , Index:https://laravel-china.org/doc...
1.3 Migrationen ausführen
Alle ausstehenden Migrationen ausführen:php artisan migrate
1.4 Rollback-Migration
Um die letzte Migration rückgängig zu machen, können Sie den rollback
Befehl verwenden:
php artisan migrate:rollback php artisan migrate:rollback --step=5 //回滚迁移的个数 php artisan migrate:reset //回滚应用程序中的所有迁移 php artisan migrate:refresh // 命令不仅会回滚数据库的所有迁移还会接着运行 migrate 命令 php artisan migrate //恢复
1.5 Verwenden Sie die Seeder-Methode, um Daten in die Datenbank zu füllen
1.5. 1 Seeders schreiben
php artisan make:seeder UsersTableSeeder
1.5.2 Datenbankfüllung
/** * 运行数据库填充 * * @return void */ public function run() { DB::table('users')->insert([ 'name' => str_random(10), 'email' => str_random(10).'@gmail.com', 'password' => bcrypt('secret'), ]); }
Verwenden Sie die Model Factory-Klasse, um Testdaten in Stapeln zu erstellen
php artisan make:factory PostFactory -m Post // -m 表示绑定的model
1.5.3 Aufrufen anderer Seeder
In der Klasse DatabaseSeeder
können Sie die Methode call
verwenden um andere seed
Klassen auszuführen.
/** * Run the database seeds. * * @return void */ public function run() { $this->call([ UsersTableSeeder::class, PostsTableSeeder::class, CommentsTableSeeder::class, ]); }
1.5.4 Ausführen von Seedern
Standardmäßig führt der Befehl db:seed
die Klasse DatabaseSeeder
aus, die zum Aufrufen anderer Seed
-Klassen verwendet werden kann. Sie können jedoch auch die Option --class
verwenden, um eine bestimmte seeder
-Klasse anzugeben:
php artisan db:seed php artisan db:seed --class=UsersTableSeeder
Sie können auch den Befehl migrate:refresh
verwenden, um die Datenbank zu füllen, wodurch alle Migrationen zurückgesetzt und erneut ausgeführt werden. Mit diesem Befehl kann die Datenbank neu erstellt werden:
php artisan migrate:refresh --seed
2. Modell
Erstellen Sie ein Modell:
php artisan make:model Models/Goods php artisan make:model Models/Goods -m //同时生成对应的migration文件
3. Routen in Stapeln erstellen: (Ressourcenrouting)
php artisan make:controller UserController --resource Route::resource('user', 'UserController'); //批量一次性定义`7`个路由
>location = /favicon.ico { access_log off; log_not_found off } location = /robots.txt { access_log off;
4. Verifizierung
4.2 Verifizierung der Formularanfrage
try_files $uri $uri/ /index.php?$query_string; }
Unterschiede und Hinweise
1. Suchen und Abrufen
php artisan make:request StoreBlogPost
Nach dem Login kopieren
get - Mehrere Datenergebnisse abfragen
php artisan make:request StoreBlogPost
DB::table("表名")->get(); DB::table("表名")->where(条件)->get();
2.模型与数据表的绑定
创建Model类型,方法里面声明两个受保护属性:$table(表名)和$primaryKey(主键)
<?php namespace App; use Illuminate\Database\Eloquent\Model; class Student extends Model{ protected $table = 'student'; protected $primaryKey = 'id'; }
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
Das obige ist der detaillierte Inhalt vonAnalyse der grundlegenden Migrationen von Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Methode zum Abholen des Rücksendecode, wenn das Senden von Laravel -E -Mails fehlschlägt. Wenn Sie Laravel zur Entwicklung von Anwendungen verwenden, stellen Sie häufig Situationen auf, in denen Sie Überprüfungscodes senden müssen. Und in Wirklichkeit ...

Laravel -Zeitplan -Aufgabe Ausführen nicht reagierende Fehlerbehebung Bei Verwendung der Zeitplanung von Laravel -Zeitplänen werden viele Entwickler auf dieses Problem stoßen: Zeitplan: Run ...

Die Methode zum Umgang mit Laravels E -Mail -Versagen zum Senden von Verifizierungscode besteht darin, Laravel zu verwenden ...

So implementieren Sie die Tabellenfunktion von benutzerdefiniertem Klicken, um Daten in dcatadmin (laravel-admin) hinzuzufügen, wenn Sie DCAT verwenden ...

Die Auswirkungen des Austauschs von Redis -Verbindungen im Laravel -Framework und der Auswahl von Methoden bei Verwendung von Laravel -Framework und Redis können Entwickler auf ein Problem stoßen: Durch Konfiguration ...

Benutzerdefinierte Mieterdatenbankverbindung in Laravel Multi-Tenant-Erweiterungspaket Stanz/Mietverhältnis beim Erstellen von Multi-Mandanten-Anwendungen mit Laravel Multi-Tenant-Erweiterungspaket Stanz/Mietverhältnis, ...

Laraveleloquent-Modellab Abruf: Das Erhalten von Datenbankdaten Eloquentorm bietet eine prägnante und leicht verständliche Möglichkeit, die Datenbank zu bedienen. In diesem Artikel werden verschiedene eloquente Modellsuchtechniken im Detail eingeführt, um Daten aus der Datenbank effizient zu erhalten. 1. Holen Sie sich alle Aufzeichnungen. Verwenden Sie die Methode All (), um alle Datensätze in der Datenbanktabelle zu erhalten: UseApp \ Models \ post; $ posts = post :: all (); Dies wird eine Sammlung zurückgeben. Sie können mit der Foreach-Schleife oder anderen Sammelmethoden auf Daten zugreifen: foreach ($ postas $ post) {echo $ post->

Forscher der Shanghai Jiaotong University, Shanghai Ailab und der chinesischen Universität von Hongkong haben das Open-Source-Projekt zur Visual-RFT (visuelle Verbesserung der Feinabstimmung) gestartet, für das nur eine geringe Datenmenge erforderlich ist, um die Leistung des visuellen Sprachen-Big-Modells (LVLM) signifikant zu verbessern. Visual-RFT kombiniert geschickt die regelbasierte Verstärkungslernansatz von Deepseek-R1 mit dem RFT-Paradigma (Verstärkung der Verstärkung der Verstärkung) und erweitert diesen Ansatz erfolgreich vom Textfeld auf das Gesichtsfeld. Durch die Gestaltung der entsprechenden Regelprämien für Aufgaben wie die visuelle Unterkategorisierung und Objekterkennung überwindet die visuelle RFT die Einschränkungen der Deepseek-R1-Methode, die auf Text, mathematisches Denken und andere Bereiche beschränkt ist und eine neue Möglichkeit für das LVLM-Training bietet. Vis
