0

私には2つのモデルのユーザー伝記があり、どちらも1対1の関連付けがあります。

各ユーザーは単一の経歴を持っています。私の問題は、ユーザーが自分の経歴のみを編集できるようにしたいのですが、URLから1人のユーザーが他のユーザーの経歴を編集できることです。

EX。"0.0.0.0:3000/biographies/8/edit"。ここで、ユーザーはIDを簡単に変更できます。

どうすればこれを止めることができますか?

4

2 に答える 2

0

コントローラのbiographies「編集」アクション(および更新)の下で、次の呼び出しのすぐ下にこれを挿入します@biography = Biography.find(params[:id])

unless @biography.user == current_user
    redirect_to root_path, notice: "You cannot do that" and return
end
于 2012-08-28T06:11:03.927 に答える
0
before_filter :fetch_bio, :only => [:edit, :update]

def fetch_bio
  @biography = current_user.biographies.find(params[:id])
end
于 2012-08-28T07:50:21.110 に答える