Laravel Datenbankabfrage

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Laravel Datenbankabfrage

    Grüße,

    meine letzte PHP Erfahrung, bzw. Programmiererfahrung ist gute 20 Jahre hier. Mittlerweile bin ich 61, möchte mich aber wieder dran versuchen.
    Nichts Großes, einfach nur zum Zeitvertreib aus Langeweile, dafür habe ich mir Laravel installiert, um es mir leichter zu machen, merke aber schnell, dass es aufgrund der fehlenden Englischkenntnisse wohl doch nicht so gut war auf ein Framework zu setzen.


    Nun, bevor ich weiter abschweife, benötige ich Hilfe.

    Usertabelle sollte jedem klar sein. Darin befindet sich die Spalte usercolor

    PHP Code:
    $table->string('usercolor')->nullable(); 

    In meiner Event Table

    PHP Code:
    $table->unsignedBigInteger('user_id')->nullable();
    $table->foreign('user_id')->references('id')->on('users')->onDelete('set null');​ 

    ModelsEvent.php

    PHP Code:
    public function user(){
    return 
    $this->belongsTo('App\Models\User');
    }
    ​ 

    Models/User.php

    PHP Code:
    public function events(){
    return 
    $this->hasMany('App\Models\Event');
    }
    ​ 

    EventController.php

    PHP Code:
    /**
    * Display a listing of the resource.
    */
    public function index(Request $request)
    {


    $events DB::table('events')->where('private'0)->get();

    return 
    view('calendar.index'compact('events'));
    }
    ​ 

    Über die Event Tabelle, belongsTo und hasMany habe ich ja den Bezug hergestellt. Ein User kann mehrere Events haben aber ein Event nur einen User.

    Ein Event aus der Datenbank ausgeben ist kein Problem mit {{$event->title}}. Wenn ich jetzt aber die usercolor ausgeben will die in der user tabelle steht, wie gehe ich da vor?
    Der Bezug ist ja über die Models hergestellt, geht sowas wie {{$event->user_id->usercolor}} oder so ähnlich?

    Normal würde ich das wie vor 20 Jahren lösen. Wird ein Event erstellt, lasse ich die usercolor direkt mit in die Event Tabelle schreiben, habe aber wohl die Tage gelesen das man es mit Laravel wohl so nicht macht.
    Last edited by BrainAFK; 13-10-2025, 14:35.
Working...
X