私が信じていることはかなり深い挑戦だと思うことを尋ねてすみません(とにかく現時点では私にとっては)
ユーザーがチェックイン、チェックアウトし、できればリマインダーボタンを介して興味を登録することで本が再びチェックインされたときにメールを受信できる小さなアプリがあります
これまでのところ、アクションメーラーをセットアップしました(基本セットアップ)
class ReminderMailer < ActionMailer::Base
default from: "email address"
def remind_email(book)
@book = book
@url = "http://localhost:3000"
mail(:to => @book.user.email, :subject => "Book Reminder")
end
私はすでにデバイスを介してそれを行っているので、電子メールを送信するためのすべての設定が整っています。
メーラーのテンプレートも作成しました。それは私が立ち往生している論理です。
したがって、ユーザーが本をチェックアウトすると、これをモデルに渡します
<%= form_for @book do |f| %>
<%= f.label :checked_out, "Check Book Out?" %>
<%= f.check_box :checked_out, {}, true %>
<%= f.hidden_field :user_id, :value => current_user.id %>
<%= f.hidden_field :checked_out, :value => true %>
<%= f.submit 'Checkout' %>
<% end %>
チェックイン
<%= form_for @book do |f| %>
<%= f.label :checked_out, "Check Book Back In" %>
<%= f.check_box :checked_out, {checked: false}, false %>
<%= f.hidden_field :user_id, :value => nil %>
<%= f.hidden_field :checked_out, :value => false %>
<%= f.submit 'Check In' %>
<% end %>
関心を登録する
<%= form_for @book do |f| %>
<%= f.label :remind_me, "let Me know when book back in" %>
<%= f.check_box :remind_me, {checked: false}, false %>
<%= f.hidden_field :remind_me, :value => current_user.id %>
<%= f.submit 'Remind Me' %>
<% end %>
だから私の考えでは、あなたがあなたの興味を登録すると、ユーザーIDがremind_me列に配置され、私が達成したいのは、checked_outフィールドがfalseでbook.user_idがnilに戻ったときに、メールを送信してほしいということですreject_me 列に user_id があるユーザー
私はこれについて正しい方法で考えていますか?
誰かがそれを助けることができれば、私はこれから学び、何が起こっているのかを理解するまでそれを練習し続けることができます.