Was wird in diesem Beispiel verwendet, um die Anwendung aufzuheben? Play framework code (Formularmapping)

8

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?

%Vor%

(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.

    
Eran Medan 29.01.2013, 22:55
quelle

2 Antworten

4

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.

    
gourlaysama 29.01.2013, 23:14
quelle
5

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.

    
Julien Lafont 29.01.2013 23:08
quelle