Ich bin neu im Play Framework und gehe über die 2.1 Beispiele und in der computer-database
Beispiel, ich habe die folgende Formulardefinition gefunden, die ich nicht vollständig verstehe.
Was ist die Rolle von Computer.apply
und Computer.unapply
hier?
(aus controllers/Application.scala
)
BEARBEITEN : Dies scheint eine gute Ressource zu sein: Ссылка aber ich bin mir immer noch nicht sicher, ob ich das Gesamtbild richtig verstanden habe.
Das ist ein übliches Muster in Play, wenn Sie ein Formular an die Felder einer Fallklasse binden wollen (in diesem Fall Computer
).
Mit der Methode mapping
können Sie die Konstruktions- und Dekonstruktionsfunktionen bereitstellen, die aufgerufen werden, um das Formular zu füllen und Daten daraus zu extrahieren.
Da Sie hier zu / from Computer
wechseln möchten, benötigen Sie eine Methode, die eine Computer
von Parametern erzeugt, und eine, die Parameter aus einer Computer
extrahiert, und das ist genau Computer.apply
und Computer.unapply
.
Ähnliches Beispiel: Das Mapping-Beispiel in der Dokumentation auf Formularen wiedergeben.
Sie sollten lernen, was im Scala-Kontext angewendet / nicht angewendet wird, da es nicht spezifisch für Play2 / Formulare ist.
In der Methode apply nehmen wir die erforderlichen Parameter und geben das neue zurück Instanz der Klasse sind wir interessiert, wo wir das Umgekehrte tun nicht anwenden - wir nehmen die Instanz und extrahieren die erforderlichen Informationen und gebe sie in Form eines Tupels zurück.
Kurz gesagt: apply
wird verwendet, um Computer-Objekte aus Parametern zu erstellen. unapply
wird für den umgekehrten Fall verwendet, extrahiere Parameter vom Computer-Objekt.
Tags und Links scala playframework playframework-2.0