Small update I tried to run the command rake email_sender in my terminal, and I got this :
[1m[36mUser Load (0.9ms)[0m [1mSELECT "users".* FROM "users" ORDER BY "users"."id" ASC LIMIT 1000[0m DEPRECATION WARNING: `#deliver` is deprecated and will be removed in Rails 5. Use `#deliver_now` to deliver immediately or `#deliver_later` to deliver through Active Job. (called from block (2 levels) in <top (required)> at /Users/Marco/Documents/TBProject/lib/tasks/rake1.rake:5) Rendered user_mailer/daily_mail.html.erb within layouts/mailer (1.2ms) Rendered user_mailer/daily_mail.text.erb within layouts/mailer (0.2ms) UserMailer#daily_mail: processed outbound mail in 189.6ms Sent mail to exam...@railstutorial.org (8.6ms) Date: Mon, 06 Jul 2015 19:24:29 +0200 From: ad...@fluxio.com To: exam...@railstutorial.org Message-ID: <559ab9cd79f6_193e3fc21dc6020412...@marcos-macbook-air.local.mail> Subject: Mail journalier Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="--==_mimepart_559ab9cd64da_193e3fc21dc6020412690"; charset=UTF-8 Content-Transfer-Encoding: 7bit ----==_mimepart_559ab9cd64da_193e3fc21dc6020412690 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Daily Mail ----==_mimepart_559ab9cd64da_193e3fc21dc6020412690 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 7bit <html> <body> <h1>Daily Mail</h1> </body> </html> ----==_mimepart_559ab9cd64da_193e3fc21dc6020412690-- DEPRECATION WARNING: `#deliver` is deprecated and will be removed in Rails 5. Use `#deliver_now` to deliver immediately or `#deliver_later` to deliver through Active Job. (called from block (2 levels) in <top (required)> at /Users/Marco/Documents/TBProject/lib/tasks/rake1.rake:5) Rendered user_mailer/daily_mail.html.erb within layouts/mailer (0.0ms) Rendered user_mailer/daily_mail.text.erb within layouts/mailer (0.0ms) UserMailer#daily_mail: processed outbound mail in 15.2ms Sent mail to t...@test123.ch (2.7ms) Date: Mon, 06 Jul 2015 19:24:29 +0200 From: ad...@fluxio.com To: t...@test123.ch Message-ID: <559ab9cdd27c_193e3fc21dc602041...@marcos-macbook-air.local.mail> Subject: Mail journalier Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="--==_mimepart_559ab9cdc753_193e3fc21dc60204128e8"; charset=UTF-8 Content-Transfer-Encoding: 7bit ----==_mimepart_559ab9cdc753_193e3fc21dc60204128e8 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Daily Mail ----==_mimepart_559ab9cdc753_193e3fc21dc60204128e8 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 7bit <html> <body> <h1>Daily Mail</h1> </body> </html> ----==_mimepart_559ab9cdc753_193e3fc21dc60204128e8-- So it sent mails to the only two users that had daily == true, so my method work. But is the scheduled job working ? Le lundi 6 juillet 2015 16:51:58 UTC+2, Marco Dias a écrit : > > Hi, > > > I need to implement a notification feature in my project. My user model > has a daily, weekly and monthly booleans fields. I already have a > UserMailer that sends mail when I create an account, or for password > resetting. > > > What I want is my app to send a mail each day or week or month, depending > on what the user chose. > > > So I've installed Whenever gem <https://github.com/javan/whenever>, and > here is my schedule.rb : > > every :day, :at => '12pm' do # Use any day of the week or :weekend, > :weekday rake "email_sender" > end > > > > My rake task : > > desc "Send email to users" > > task :email_sender => :environment do |_, args| > User.find_each do |user| > UserMailer.daily_mail(user).deliver if user.daily == true > end > end > > > > My UserMailer : > > def daily_mail(user) > @user = user mail to: user.email, subject: "Mail journalier" > end > > > The thing is, I don't know if I did right, and how can I test this, since > I'm not in development ? > > I did a crontab -l and I get this : > > # Begin Whenever generated tasks for: store > > 0 12 * * * /bin/bash -l -c 'cd /Users/Marco/Documents/TBProject && > RAILS_ENV=production bundle exec rake email_sender --silent' > > > # End Whenever generated tasks for: store > > > > # Begin Whenever generated tasks for: > /Users/Marco/Documents/TBProject/config/schedule.rb > > 0 12 * * * /bin/bash -l -c 'cd /Users/Marco/Documents/TBProject && > RAILS_ENV=production bundle exec rake email_sender --silent' > > > # End Whenever generated tasks for: > /Users/Marco/Documents/TBProject/config/schedule.rb > > > If you could help me please > > > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscr...@googlegroups.com. To post to this group, send email to rubyonrails-talk@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/c78d5fb9-65e6-4d04-a6af-a17c39b6a460%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.