LoginSignup
0
1

More than 3 years have passed since last update.

URL直打ちしてもindexアクションで購入した商品のURLに飛ばさない為の記述

Posted at

 購入した商品のページにURL直打ちしてもindexページにリダイレクトさせる方法

Why

某フリマアプリでどうやるんだっけ?となったので自分で色々触っていたら解決したのでスクール生とかの為になればと思い記事を書きました!

URLの遷移先をどこにするかはコントローラーのindexアクションに記述します

orders_controller.rb
def index
    @item = Item.find(params[:item_id])
    @address = OrderAddress.new
    if @address.save
        redirect_to root_path
    end
end

4行目のif文と5行目のredirect_toに注目!

3行目で定義した@address(formオブジェクトでまとめた2つのモデル)をインスタンスで格納し、4行目で該当のレコードが保存されたらという定義をしています。そして保存されていたら(すでにレコードに情報があれば)redirect_toで「root_path」つまりトップページに遷移しまっせ〜というのが5行目の記述です。

これが!

fe573d5f79ce1ddfcf7d42156ec0f7d1.png

こうなっていればOK!!

12ba866f3a3964bd80891b8fc643779e.png

おまけ

ちなみに

  • items = 商品の情報
  • addresses = 購入者情報
  • orders = 商品IDと誰が買ったかのuserID
  • users = 全ユーザー

のネームセンスでお届けしました!

現場からは以上です!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1