2

を使用してrspec-rails、メール テンプレートの正しいレンダリングをテストするにはどうすればよいですか? 私はこのテストから始めましたspec/views/user_mailer.spec

describe Mailer do
  it 'sends an message email' do
    render 'send_message'
  end
end

それは私に言います:

Failure/Error: render 'mailer/send_message.html.erb'
 ActionView::MissingTemplate:
   Missing partial mailer/send_message.html with {:formats=>[:html, :text, :js, :css, :ics, :csv, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip], :handlers=>[:erb, :builder, :haml, :coffee], :locale=>[:de]}. 
 Searched in: 
   * ".../app/views"`

しかし、レンダリングしたいテンプレートがありますapp/views/mailer/send_message.html.erb

これをどのように指定すればよいですか?(CSSルールがフッターの正しい色になるかどうかを確認したい。他に良い方法がなければjQuery-Javascriptで抽出すると思った)

4

1 に答える 1

1

以下を使用する必要がある場合があります。

render template: 'send_message'

Rails ガイドには次のように記載されています。

Rails は、文字列にスラッシュ文字が埋め込まれているため、このビューが別のコントローラーに属していることを認識しています。明示的にしたい場合は、:template オプションを使用できます。

テンプレート名にスラッシュ文字が埋め込まれていないことに注意してください。

于 2012-12-17T12:57:31.303 に答える