Modulerstellung Noun im Langutor
Links
Zielsetzung
Aufzeigen, wie ein Modul im Langutor erstellt wird, am Beispiel des Moduls "Noun".
Das Modul Word verwaltet deutsche Wörter. Je Wort sind Übersetzungen in verschiedenen Sprachen möglich (Tabelle Translations). Je Wort werden Grammatikeigenschaften und typische Verwendung gespeichert.
Tabelle nouns erstellen
php artisan make:migration create_nouns_table
- Der Teil zwischen create_ und _table ist der Name der Tabelle, also "nouns".
- Es wird eine Datei database/migrations/xxx_create_nouns_table.php erzeugt: Diese edieren.
public function up(): void
{
Schema::create('noun', function (Blueprint $table) {
$table->id();
$table->timestamps();
$table->string('name', 64);
$table->string('plural', 64);
// foreign key of sproperties: but sproperties.id is integer, not biginteger
$table->integer('genus');
$table->text('usage');
// foreign key of users
$table->foreignId('verifiedby')->references('id')->on('users')->nullable();
});
}
Modell Noun
php artisan make:model Noun
- app/Models/Noun.php
class Noun extends Model { use HasFactory; protected $fillable = ['name', 'plural', 'genus', 'usage']; }
NounController
php artisan make:controller NounController --resources
- app/Http/Controllers/NounController.php