Frage

In einigen Beispielen sehe ich email:Pk[String] unter dem User Klasse, aber in anderen sehe ich id:Pk[Long] (beide nicht zugewiesen). Ein Benutzer kann seine E -Mail so stark ändern, wie er möchte, aber die ID wird sich nicht ändern Gibt es einen (Sicherheits-) Grund dafür?

War es hilfreich?

Lösung

Ich bin mir nicht sicher, ob sich Ihre Frage bezieht NotAssigned oder email:Pk[String], aber zu einer Antwort beides: nicht wirklich. In diesem Beitrag wird die Verwendung von verwendet Pk: Was ist der Zweck von Anorms PK?

Der Zweck von so etwas wie case class User(id:Pk[Long] = NotAssigned, name:String) Mit dem ID ist es NotAssigned Standardmäßig ermöglicht eine Darstellung eines Modells, das in der Datenbank noch nicht bestanden wurde. Die ID kann später nach dem Speichern ausgefüllt werden.

Ich bin mir nicht sicher, warum Sie jemals wollen würden email: Pk[String] = NotAssigned, Als Benutzer -E -Mail ist eine kritische Information, wenn Sie das Modell bestehen. Obwohl es sicherlich in Ordnung ist, die E -Mail -Adresse als Hauptschlüssel zu verwenden, wenn Sie sich wirklich egal (oder haben) IDs. E -Mail -Adressen sollten bei wenigstens Seien Sie sowieso als eindeutiger Schlüssel in der Datenbank festgelegt, da es für zwei Benutzer niemals möglich sein sollte, dieselbe E -Mail zu haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top