加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何为所有capybara功能设置http标头

发布时间:2020-12-17 04:30:59 所属栏目:百科 来源:网络整理
导读:我使用rspec,capybara.我从http标头中设置了语言环境,如下所示 before_filter :set_locale def extract_locale_from_accept_language_header request.env['HTTP_ACCEPT_LANGUAGE'].scan(/^[a-z]{2}/).first end def set_locale return I18n.locale = current
我使用rspec,capybara.我从http标头中设置了语言环境,如下所示
before_filter :set_locale

  def extract_locale_from_accept_language_header
    request.env['HTTP_ACCEPT_LANGUAGE'].scan(/^[a-z]{2}/).first
  end

  def set_locale
    return I18n.locale = current_user.locale if user_signed_in?
    I18n.locale = extract_locale_from_accept_language_header || I18n.default_locale
  end

当我运行我的功能测试时,我得到错误’NilClass的未定义方法扫描’.
显然,水豚不设置http标头.

如何为我的所有功能设置http标头或通过其他方式避免这种情况?

解决方法

根据您的浏览器驱动程序,您可以像这样全局设置标题:
Capybara.current_session.driver.headers = { 'Accept-Language' => 'de' }
  Capybara.current_session.driver.header('Accept-Language','de')

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读