0

サイトに連絡先フォームを追加しましたが、問題が発生しています。メッセージが送信されると、「正常に送信されました」というフラッシュ メッセージが表示されますが、メールが受信トレイに届きません。私は現在開発モードにあり、私の app/config ファイルは次のようになっています

   class Application < Rails::Application

   ActionMailer::Base.delivery_method = :smtp
   ActionMailer::Base.perform_deliveries = true
   ActionMailer::Base.raise_delivery_errors = true
   config.action_mailer.smtp_settings = {
    :address => "smtp.gmail.com",
    :port    => 587,
    :domain  => "gmail.com",
    :user_name  => "myemail@gmail.com",
    :password   => "example",
    :authentication => :plain,
    :enable_starttls_auto => true
      }

     config.action_mailer.default_url_options = {
     :host => "gmail.com"
      }

私の連絡先コントローラーはこのようなものです

      def new
       @message = Message.new
      end

     def create
     @message = Message.new(params[:message])
      if @message.valid?
      NotificationsMailer.new_message(@message).deliver
      redirect_to(root_path, :notice => "Message was successfully sent.")
     else
     flash.now.alert = "Please fill all fields."
     render :new
     end
    end 

     end

そして最後に私の通知メーラー

      class NotificationsMailer < ActionMailer::Base
      default :from => "myemail@gmail.com"
      default :to => "myemail@gmail.com"

     def new_message(message)
     @message = message
     if message.file
      attachment_name = message.file.original_filename
      attachments[attachment_name] = message.file.read
     end
     mail(:subject => "[myemail@gmail.com] #{message.subject}")
    end
     end

うまく機能した別のサイトでこれを実装したので、ここで明らかなものが欠けていますか?何が起こっているのかわかりません

どんな助けでも大歓迎

4

1 に答える 1

1

app/config.rb で設定したことは知っていますがconfig.action_mailer.perform_deliveries、config/environments/development.rb でオーバーライドされていないことを確認します

于 2012-07-18T20:01:06.753 に答える