Show
標準の REST URL ではなく、サブドメインを介してアクセスされる Railsのモデル ( ) があります。ファイルapp/helpers/url_helper.rb
には、次のメソッドがあります。
def show_url(show)
root_url(subdomain: show.subdomain)
end
コントローラーでは、これは完全に機能します。私はそれをテストすることができ、期待どおりにショーのをputs show_url(@show)
出力します: 。ただし、統合テストでは、このメソッドは機能せず、代わりに Rails によって生成されたデフォルトのメソッドが使用されます。そこを走ると、 . 統合テストでこのカスタム URL ヘルパーを使用するにはどうすればよいですか?subdomain
http://test.example.com
puts show_url(@show)
http://example.com
編集:
routes.rb
このサブドメインに関するセクション:
constraints(lambda do |request|
request.subdomain.present? && request.subdomain != 'www'
end) do
get '/' => 'shows#show', as: :show
get '/edit' => 'shows#edit', as: :edit_show
end
これは、サブドメイン マッチングに関する Railscast に大まかに基づいています。