कहो मैं निम्नलिखित ऐनक है साथ Clojure युक्ति का उपयोग करना:Datomic संस्थाओं
(s/def :person/age number?)
(s/def :person/name string?)
(s/def ::person (s/keys :req [:person/name :person/age]))
तब मैं Datomic से एक इकाई लाने:
(def person-entity (d/entity (d/db conn) [:person/name "Mr entity"]))
अगर मैं कल्पना यह कारण विफल रहता है के साथ अनुरूपता की जाँच करने के लिए प्रयास करें संस्थाएं नक्शे नहीं हैं:
(s/explain ::person person-entity)
val: #:db{:id 17592186069950} fails spec: :some-ns/person predicate: map?
मेरे ऐप में ऐसे कार्य हैं जो तर्कों के रूप में संस्थाएं लेते हैं और एक विकास में काम करने के लिए spec instrumentation प्राप्त करने के लिए बस हर जगह नक्शे पर इकाइयों को सुधारने के लिए शून्य।
मुझे spec के माध्यम से इकाइयों को मान्य करने के बारे में कैसे जाना चाहिए?
अच्छा सवाल। इस समस्या का हल ढूंढने के बाद, क्या आप नेमस्पेस के साथ किसी समस्या में भी भाग नहीं पाएंगे? इकाई मानचित्र कुछ ऐसा होगा: '{: व्यक्ति/नाम" श्री Entity "}', जो '(s/keys: req [:: name :: age]) के खिलाफ _not_ मान्य नहीं करता है, जब तक कि ये परिभाषाएं न हों '(एनएस व्यक्ति) 'में। लेकिन यह आपको शीर्ष स्तर के पैकेज नामस्थानों का एक गुच्छा परिभाषित करने के लिए मजबूर करता है, जो उचित प्रतीत नहीं होता है। – Marc
धन्यवाद @Marc, मैंने उदाहरण अपडेट किया है। – Odinodin