Railsには607の未解決の問題があります...だから、私は最初にここで試してみましたが、その穴をさらに塞ぐのではなく。 4.1にアップグレードし、Railsメーラープレビューを実装しています。既存のメーラーをアップグレードして、tests/mailers/previewsディレクトリを追加しようとしました。次のエラーが発生した場合は、新しいメーラーを生成しようとしました。同じエラー。
class NotifierPreview < ActionMailer::Preview
def welcome
Notifier.welcome(User.first)
end
end
このエラーが発生します:
The action 'notifier' could not be found for Rails::MailersController
私はグーグル、ドキュメント、スタックオーバーフローを検索しようとしましたが、このエラーを回避するものは何もありません。
誰かがこれを経験したり、何かアイデアがありますか?
これは、UserMailer
とNotifierPreview
を使用しているためです。 NotifierPreviewをUserMailerPreviewに変更すると、動作を開始します。実装例を確認してください https://github.com/RichIsOnRails/ActionMailerPreviewsExample およびチュートリアル。
乾杯!!
デフォルトのプレビューパスは/test/mailers/previews
しかし、rspecはこれをオーバーライドして/spec/mailers/previews
次の方法で、パスを好きなように設定できます。
config.action_mailer.preview_path = "#{Rails.root}/test/mailers/previews"
Rspecを使用している場合は、rspec-Rails
gemは開発環境にロードされています。そうでない場合、Railsは、/ specではなく/ testフォルダーの下でプレビューを検索します。
行を削除します
get '/:controller(/:action(/:id))'
get '/:controller(/:action(/:id))(.:format)'
あなたのroutes.rb
から
@hellionが前の回答へのコメントで述べているように、これがこの問題の解決策です。