Modulerstellung Noun im Langutor

Aus Vokabulabor
Version vom 17. November 2023, 19:16 Uhr von Hamatoma (Diskussion | Beiträge) (→‎Tabelle nouns erstellen =)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

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

= index


Views