私はRails 3に関するいくつかの基本的なチュートリアルを行いました。目標は能力と活動に関するコミュニティのウェブサイトです。私はDeviseを認証に使用しています。アバターを使ったユーザープロファイルの作成はうまくいきました(ペーパークリップのおかげで)。Rails 3:ユーザープロフィールからメッセージを送信するための連絡フォーム
次のステップとして、登録ユーザーがに彼または彼女のプロフィールページから電子メールを送信できるようにします。私は、Google Appsのを使用して連絡先フォームの作成に多大なチュートリアルが見つかりました:
class NotificationsMailer < ActionMailer::Base
default :from => "[email protected]"
default :to => "[email protected]"
def new_message(message)
@message = message
mail(:subject => "[YourWebsite.tld] #{message.subject}")
end
end
私の質問:への最善の方法はあなたに取って代わるとは何ですか@ youremail http://matharvard.ca/posts/2011/aug/22/contact-form-in-rails-3/
をこのチュートリアルでメーラークラスがどのように見えます.devと受信者の電子メールアドレスは? (ユーザーモデルから)
ありがとうございます!
素晴らしいです、ありがとう!コントローラにどのユーザにメッセージを送るべきかを知らせるために、メッセージフォームに隠しフィールドを追加しました。次のようになります。<%= form.hidden_field:user_id、:value => @ user.id%> –
@ user1133942素晴らしい!あなたのアプリの特殊性についてはあまりよく分かりませんが、悪意のあるユーザーが隠しフィールドの価値を変更してから、他の誰かにメッセージを送信できることに注意してください。したがって、これが許容できない場合は、それが起こらないようにする必要があります。 – Behrang
私はCanCanを使用してユーザーの権利を制限しており、ログインしているメンバーだけが電子メールを送信できるようにするため、現在のユーザーに必要な権限がない場合、メッセージコントローラは送信を禁止します。しかし、私は、すべての潜在的な脅威を見るためにしばらくの間、Railsに対処しなければならないと思います。ヒントありがとう! :-) –