json - Aeson fromJSON instance -


मेरे पास निम्न डेटा प्रकार है:

  डेटा उपयोगकर्ता = उपयोगकर्ता {name :: T । पाठ, बुककाउंट :: इंट, सदस्यजिस :: दिनांक समय, ईमेल :: टी। पाठ, पासवर्ड :: बीबीस्ट्रेडिंग} | UnverifiedUser {nameUnverified :: T.text, email unverified :: T.Text, secret :: integer}   

और निम्न उदाहरण:

  उदाहरण FromJSON उपयोगकर्ता जहां parseJSON (वस्तु ओ) | बस _ & lt; - एम। लुकअप "गुप्त" ओ = असत्यापित उपयोगकर्ता & lt; $ & gt; ओ .: "नाम" & lt; * & gt; ओ: "ईमेल" & lt; * & gt; ओ: "गुप्त" | अन्यथा = उपयोगकर्ता & lt; $ & gt; ओ .: "नाम" & lt; * & gt; ओ: "बुककाउंट" & lt; * & gt; ओ .: "सदस्य" और <;; & gt; ओ: "ईमेल" & lt; * & gt; ओ: "पासवर्ड" parseJSON _ = mzero   

लेकिन उपयोगकर्ता को दो में विभाजित किया गया था, क्योंकि कभी-कभी couchdb में दस्तावेज़ के पास कुछ फ़ील्ड जैसे गुप्त, या पासवर्ड नहीं होता है मैं डेटा प्रकार के लिए जेएसएएन उदाहरण कैसे बना सकता हूं:

  डेटा उपयोगकर्ता = उपयोगकर्ता {name :: T.Text, bookCount :: Int, memberSince :: DateTime, email :: T.Text , पासवर्ड :: बीबीस्ट्रेडिंग, गुप्त :: पूर्णांक}   

जहां कुछ फ़ील्ड अनिवार्य हैं और अन्य नहीं हैं?

क्यों शायद का उपयोग नहीं करें?

  डेटा उपयोगकर्ता = उपयोगकर्ता {name :: T.Text, bookCount :: Int, सदस्य: के रूप में :: दिनांक समय, ईमेल :: टी। पाठ, पासवर्ड :: शायद बीबीस्ट्रेडिंग, नाम का सत्यापन नहीं किया गया है :: टी। पाठ, ईमेल सत्यापित नहीं है :: टी। पाठ, गुप्त :: शायद पूर्णांक} उदाहरण से जेजेएसएन उपयोगकर्ता जहां parseJSON (ऑब्जेक्ट ओ ) = उपयोगकर्ता & lt; $ & gt; ओ .: "नाम" & lt; * & gt; ओ: "बुककाउंट" & lt; * & gt; ओ .: "सदस्य" और <;; & gt; ओ: "ईमेल" & lt; * & gt; ओ।:? "पासवर्ड" & lt; * & gt; ओ: "नाम का सत्यापन नहीं" & lt; * & gt; ओ: "ईमेल अनुपयुक्त" & lt; * & gt; ओ।:? "गुप्त"    

Comments

Popular posts from this blog

mysql - BLOB/TEXT column 'value' used in key specification without a key length -

c# - Using Vici cool Storage with monodroid -

python - referencing a variable in another function? -