मेरे पास निम्न मॉडल के साथ एक ऐप है: User
, Task
, और Assignment
। प्रत्येक असाइनमेंट belongs_to
उपयोगकर्ता और कार्य (या दूसरे शब्दों में, किसी कार्य को असाइनमेंट के माध्यम से किसी उपयोगकर्ता को असाइन किया जाता है)।रेल में एक नए मॉडल उदाहरण के निर्माण पर ईमेल भेजने का सबसे अच्छा तरीका?
एक बार कोई उपयोगकर्ता कार्य पूरा करने के बाद, असाइनमेंट को पूर्ण के रूप में चिह्नित किया जाता है, और ऐप तुरंत एक नया असाइनमेंट बनाता है (या दूसरे शब्दों में, किसी और को कार्य सौंपा जाता है)।
इस नए असाइनमेंट को बनाने के तुरंत बाद, मैं नए असाइनरी को एक ईमेल भेजना चाहता हूं। मुझे पता है कि मैं इसे तीन तरीकों से कर सकता हूं:
- स्पष्ट रूप से मेरे नियंत्रक में ईमेल भेजें।
- असाइनमेंट मॉडल पर कॉलबैक में ईमेल भेजें।
- असाइनमेंट मॉडल पर एक पर्यवेक्षक बनाएं और
after_create
में ईमेल भेजें।
इनमें से कौन से विकल्प लोगों को लगता है कि सबसे अच्छा है, और क्यों? # 1 मेरे लिए बुरा लगता है, क्योंकि मैं इसे हर कार्य में भेजने के लिए याद रखना नहीं चाहता जो असाइनमेंट पूरा कर सके। मैंने सुना है कि कुछ लोग कहते हैं कि रेल पर्यवेक्षक खराब हैं और उन्हें टालना चाहिए, लेकिन मुझे यकीन नहीं है कि वे लोग हैं या नहीं, मुझे भरोसा करना चाहिए या नहीं। कोई अन्य राय?
टीडीडी चीज पर्यवेक्षकों का उपयोग करने का एक शानदार कारण है। जब तक कोई अधिक आकर्षक बिंदु नहीं बनाता है, तो मैं जल्द ही आपको बंद कर दूंगा। – jakeboxer