سؤال

في بعض الأمثلة ، أرى email:Pk[String] تحت User الفصل ولكن في حالات أخرى أرى id:Pk[Long] (كلاهما لم يتم تعيينه). يمكن للمستخدم تغيير بريده الإلكتروني بقدر ما يريدون ولكن المعرف لن يتغير كذلك هل هناك سبب (أمني) وراء هذا؟

هل كانت مفيدة؟

المحلول

لست متأكدًا مما إذا كان سؤالك يشير إلى NotAssigned أو email:Pk[String], ، ولكن للإجابة على حد سواء: ليس حقا. هذا المنشور حتى يناقش استخدامات Pk: ما هو الغرض من ANORM'S PK؟

الغرض من شيء مثل case class User(id:Pk[Long] = NotAssigned, name:String) مع وجود الهوية NotAssigned بشكل افتراضي ، يسمح بتمثيل نموذج لم يتم استمراره في قاعدة البيانات حتى الآن. يمكن شغل المعرف لاحقًا بعد الادخار.

لست متأكدًا لماذا تريد email: Pk[String] = NotAssigned, ، كبريد إلكتروني للمستخدم هو جزء حرجة من المعلومات عند استمرار النموذج. على الرغم من أنه من الجيد بالتأكيد استخدام عنوان البريد الإلكتروني كمفتاح أساسي إذا كنت لا تهتم حقًا (أو لديك). يجب أن تكون عناوين البريد الإلكتروني في على الأقل يتم تعيينها كمفتاح فريد في قاعدة البيانات ، على أي حال ، لأنه يجب ألا يكون من الممكن أبدًا أن يكون لدى اثنين من المستخدمين نفس البريد الإلكتروني.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top