मान लें कि मेरे पास एक वर्ग है जो स्थानों का प्रतिनिधित्व करता है। स्थान ग्राहकों के "संबंधित" हैं। स्थान एक यूनिकोड 10 वर्ण कोड द्वारा पहचाने जाते हैं। एक विशिष्ट ग्राहक के लिए स्थानों के बीच "स्थान कोड" अद्वितीय होना चाहिए।sqlalchemy कई कॉलम में अद्वितीय
The two below fields in combination should be unique
customer_id = Column(Integer,ForeignKey('customers.customer_id')
location_code = Column(Unicode(10))
तो अगर मैं दो ग्राहकों, ग्राहक "123" और ग्राहक "456" है। दोनों में "मुख्य" नामक एक स्थान हो सकता है लेकिन न तो दो स्थान मुख्य हो सकते हैं।
मैं इसे व्यापार तर्क में संभाल सकता हूं लेकिन मैं यह सुनिश्चित करना चाहता हूं कि sqlalchemy में आसानी से आवश्यकता को जोड़ने का कोई तरीका नहीं है। अद्वितीय = सही विकल्प केवल एक विशिष्ट फ़ील्ड पर लागू होने पर ही काम करता है और यह पूरे तालिका को केवल सभी स्थानों के लिए एक अद्वितीय कोड का कारण बनता है। Column
की documentation से
मैं भी यही समस्या का सामना है, लेकिन UniqueConstraint का उपयोग करके मेरी मदद नहीं की। इंडेक्स ('...') के साथ प्रयास करने के बाद मुझे एक अनूठी बाधा मिलती है। क्या इस व्यवहार के साथ कोई स्पष्टीकरण है? – swdev
@ एसडब्ल्यूडीवी: आप किस आरडीबीएमएस का उपयोग करते हैं? – van
मैं PostgreSQL का उपयोग कर रहा हूँ। क्या इसमें कोई समस्या है? – swdev