2016-08-15 1 views
1

У меня есть фрагмент кода, который собирает параметры из формы и читает их в приглашение, как я вижу. Проблема заключается в том, что одним из этих параметров является электронное письмо, которое я хочу обеспечить, не имеет конечных пробелов. Как я могу применить полоску для приглашения и все параметры, поданные в нее?Удалить пустое пространство из параметров

def invite_partner 
    return unless invite = params[:partner] 
    return flash.now[:error] = 'Please select a role' unless role = Role.where(klass: invite[:klass], name: 'Admin').first 
    return flash.now[:alert] = 'Email address already in use' if User.where(email: invite[:email]).first 

    raise 'bugger' unless current_user.is_a?(User) 

    partner_invite = PartnerInviteMailer.invite(current_user.operator, invite[:email], invite[:klass], Portal.portal_for_hostname(host_from_request)) 
    partner_invite.deliver 

    flash.now[:success] = "#{invite[:klass]} invited, email sent to #{invite[:email]}" 
end 

ответ

3

Помогает ли это?

params[:partner].each { |key, value| value.strip! } 
+0

Я получаю 'undefined method' strip! ' для ["contact_name", "Eamonn"]: Array', когда я пытаюсь это сделать. Я думал, что это будет подход изначально, но не такая удача. Любые другие предложения? – EamonnMcElroy

+0

Все ли массивы params? –

+0

Вот пример того, что я пытаюсь удалить: 'Параметры: {" utf8 "=>" ✓ "," authenticity_token "=>" pBVKk9Aa7540buWSQrPO0pomC8LQCCFIlrel + ocjJRI = "," partner "=> {" contact_name "=>" Eamonn "," company_name "=>" Eamonn "," email "=>" [email protected] "," company_notes "=>" ew "," klass "=>" Partner "}," commit "= > «Отправить приглашение»} 'Он не показывает его, но в электронном письме много конечных пробелов, которые мне нужно удалить. – EamonnMcElroy