अगर आप Role
हैं इकाई को डेटाबेस में संग्रहीत किया जा रहा है तो यह कोड उस भूमिका इकाई को बनाने का प्रयास करेगा ("admin"
के नाम से ) हर बार जब आपका आवेदन शुरू होता है। हालाँकि, पहली बार के बाद, वह भूमिका पहले से मौजूद होगी, इस प्रकार आपको एक त्रुटि मिलती है कि आपके पास एक डुप्लिकेट "नाम" है। आप जो करना चाहते हैं वह यह जांचना है कि भूमिका पहले से मौजूद नहीं है, या आपके डीबी में भूमिकाएं संग्रहीत नहीं हैं।
आप वर्तमान डीबी की जांच के लिए कुछ कोड जोड़ सकते हैं और केवल उस भूमिका को जोड़ सकते हैं यदि यह अस्तित्व में नहीं है। कुछ इस तरह:
Role.find({ name: 'admin' }, function(err, results) {
if (err) { /* handle this! */ }
if (results.length < 1) {
// now we know the DB doesn't have it already, so do the Role creation...
}
});
ध्यान दें कि आप यह भी जांचना चाहेंगे कि क्या उस रोल टेबल में पहले से ही प्रिंसिपल हैं जिन्हें आप जोड़ रहे हैं और उन्हें केवल तभी जोड़ें जब वे पहले से नहीं हैं।