हाय मैं टेक्स्ट फ़ील्ड में दर्ज सभी ईमेल कॉमा पते पर ईमेल भेजना चाहता हूं। मेरे पास ऐसा करने के लिए निम्नलिखित नियंत्रक है।एकाधिक अल्पविराम से अलग ईमेल पते पर ईमेल भेजना
def send_invites #friend invites
@emails_txt = params[:emails_txt]
@emails = @emails_txt.split(/\s*,\s*/)
@ve = []
@emails.each do |email|
if email =~ /\b[A-Z0-9._%a-z-][email protected](?:[A-Z0-9a-z-]+.)+[A-Za-z]{2,4}\z/
@ve << email
end
end
@all_ok = true
@errors = []
@ve.each do |email|
@invitation = Invitation.new
@invitation.sender = current_user
@invitation.recipient_email = email
if @invitation.save
UserMailer.invitation_notification(current_user, @invitation, new_user_registration_url+"/#{@invitation.token}").deliver
else
@all_ok = "false"
@errors << @invitation.errors
end
end
end
यह ठीक काम कर रहा था, लेकिन अब यह त्रुटि दे रहा है के रूप में
NoMethodError in InvitationsController#send_invites
undefined method `username' for nil:NilClass
इस प्रकार है क्या समस्या मेरी मदद करें। धन्यवाद
उत्तर के लिए धन्यवाद। मेरे विचार से आप सही है। जब मैं ईमेल पते की सूची प्राप्त करता हूं तो मुझे साइन आउट हो रहा है और यही कारण है कि 'current_user' शून्य हो जाता है। –
ऐसा इसलिए था क्योंकि मैं रेल के टैग के लिए form HTML के बजाय सामान्य HTML फॉर्म का उपयोग कर रहा था। Form_for टैग का उपयोग करके स्वचालित रूप से फ़ॉर्म के भीतर अपना एप्लिकेशन टोकन शामिल होता है जो सुरक्षा चिंताओं के संबंध में बहुत महत्वपूर्ण है। –