ご意見送信フォーム設置しました
Rails4
最近腱鞘炎がひどいくて湿布を手放せません。歌丸です。
http://prpr-antena.com のページフッターにご意見送信フォームを作りました。
レスポンスが遅いなど配色がださいなど送って頂きたく。
以下、今回の実装で書いたコードです。
ご意見フォームを作るには、Opinionモデルを作りました。
model
いたずら対策でバリデーションを書いています。
class Opinion < ActiveRecord::Base validates :body, presence: true, :uniqueness => true, :length => { :maximum => 2000 } end
controller
完了後のためにテンプレートを作るのがめんどくさかったので送信後は文字をrenderしています。
class OpinionsController < ApplicationController def create @opinion = Opinion.new(opinion_params) if @opinion.save render text: "ご意見ありがとうございます。今後のサイト運営に生かしていきます。<br><a href='#{root_path}'>ホームに戻る</a>" else render text: "入力内容に誤りがあります。<br><a href='#{root_path}'>ホームに戻る</a>" end end private def opinion_params params.require(:opinion).permit(:body) end end
view
文言はcookpadから頂きましたm(_ _)m
『ぺろぺろあんてな』について<br /> あなたのご意見をお聞かせください <%= form_for @opinion do |f| %> <div> <%= f.text_area :body, size: '40x7' %> </div> <div> <%= f.submit '『ぺろぺろあんてな』に意見を送る' %> </div> <% end %>