に、あなたがActiveMailerクラスを設定したい:
機能を使用すると、別々のファイルにそれらを分割し、次のディレクトリ構造を使用することができます巨大である場合
app/mailers /を使用して、ビューテンプレートをapp/views /に配置し、環境設定後にメールを正しく送信することができます。
あなたのメーラーにアクセスするには、実際に送信するか、あなたがそうのように、環境を必要とするのlib /タスク/ cron.rakeでrakeタスクを設定できます。
namespace :cron
desc "Sends some emails"
task :send_emails => [:environment] do
MailerName.some_email(:some_option => 'w00t').deliver
end
end
をあなたは、このレーキを打つことができbashシェルスクリプトを実行することで、次のような作業を行うことができます。
#!/bin/bash
export GEM_HOME=/usr/local/lib/ruby/gems/1.9.1/gems
export GEM_PATH=/usr/local/lib/ruby/gems/1.9.1
cd "https://stackoverflow.com/users/yourname/railsapp"
/usr/local/bin/rake cron:send_emails RAILS_ENV=production
これは実行するたびに環境全体が読み込まれることに注意してください。 lotメールをメールで送信している場合は、curl
を定期的に使用してサーバー上の特定のURLにアクセスする方がよい場合があります。そのため、実行ごとに新しいサーバーをスピンアップするのではなく、既存のサーバーRailsインスタンスを使用します。
私はそれらをapp/mailerに入れると、どこにメールビューファイルを置くのですか?現在これらはviews \ classnameフォルダにあります。これはメインレールのアプリケーションの外部から動作する予定ですか? – seanyboy