Ankündigung

Einklappen
Keine Ankündigung bisher.

Laravel - Formulardaten speichern

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • kaptainIglo
    hat ein Thema erstellt Laravel - Formulardaten speichern.

    Laravel - Formulardaten speichern

    Hallo,

    ich möchte ein eigenes Projekt mit Laravel umsetzen und stoße auf die ersten Probleme.
    Ich habe einen Controller. Der heißt PlayerController. Hier gibt es eine Funktion:
    PHP-Code:
    public function store() 
    In der Funktion werden Daten aus einem Formular abgespeichert.
    Beispiel:
    PHP-Code:
    ...
    $this->player->vorname         Input::get('vorname');
    $this->player->nachname          Input::get('nachname');
    $this->player->geburtsdatum    Input::get('geburtsdatum');
    $this->player->handy         Input::get('handy');
    $this->player->save();
    ... 
    Das funktioniert soweit alles prima. Allerdings frage ich mich ob das alles etwas in einem Controller verloren hat. Müsste ich das Speichern in eine andere Klasse auslagern? Kann ich das ins Model auslagern? Oder wie löse ich das am Besten?

    Gruß
    HP

  • Tropi
    antwortet
    In der Laracasts-Serie Diggin In gibt es einen ganz guten Einstieg und ist sogar noch direkt auf Laravel bezogen. Nachteil: Du brauchst ein Abo damit du es sehen kannst. (Zumindest auf legalem Wege.)

    Einen Kommentar schreiben:


  • kaptainIglo
    antwortet
    @Tropi
    Vielen Dank. So ganz klar ist mir das noch nicht. Gibt es überhaupt gute Bücher in denen Einsteigern das Thema verständlich und praxisnah rübergebracht wird?

    Einen Kommentar schreiben:


  • Tropi
    antwortet
    Du solltest Model mehr als Schicht denn als Klasse/Objekt sehen. Du könntest z.B. das Geschäftsobjekt BusinessPlayer haben welches die Methode vereinWechseln($neuerVerein) kennt. Das ist tatsächlich Geschäftslogik, und hat mit deiner Anwendung zu tun. In der Methode vereinWechseln() kannst du dann das Daten-Objekt (z.B. Eloquent) Model verwenden um den Verein zu wechseln (vermutlich irgendeine Art UPDATE-Befehl). Das hier nur als kurzes Beispiel, es gibt sicher ausführliche Erklärungen zu diesem Thema, kannst dir ja mal Bücher zu Softwareentwicklung ansehen, insbesondere MVC.

    Einen Kommentar schreiben:


  • kaptainIglo
    antwortet
    Sehe ich das richtig, dass das eigentlich mein Model wäre?
    (Klasse Player).

    Einen Kommentar schreiben:


  • monolith
    antwortet
    Zitat von kaptainIglo Beitrag anzeigen
    Kannst Du mir erklären was ein Business-Objekt ist?
    Business Logic, Geschäftslogik, nehm ich mal an.

    Einen Kommentar schreiben:


  • kaptainIglo
    antwortet
    Zitat von Tropi Beitrag anzeigen
    Worauf zeigt denn $this->player? Ist das nicht dein (Eloquent-)Model?

    Aber ja, idealerweise delegiert der Controller das Speichern davor noch an ein Business-Objekt. Dort kannst du dann auch den Input validieren.
    Kannst Du mir erklären was ein Business-Objekt ist?

    $this->player zeigt auf das Player-Model. Im Constructor habe ich ein
    Objekt erzeugt.

    Einen Kommentar schreiben:


  • alxy
    antwortet
    Setz im Model das $fillable-Attribut und mach dann Player::create(Input::all())

    Einen Kommentar schreiben:


  • Tropi
    antwortet
    Worauf zeigt denn $this->player? Ist das nicht dein (Eloquent-)Model?

    Aber ja, idealerweise delegiert der Controller das Speichern davor noch an ein Business-Objekt. Dort kannst du dann auch den Input validieren.

    Einen Kommentar schreiben:

Lädt...
X