2

私はRails 3アプリを持っていますが、これは私が理解しようとしているものです。

ユーザーが使用するためにログインする必要があるアプリを既に持っていますが、ユーザーのプロファイルは公開されています。プロファイルの URL はhttp://myapp.com/users/usernameです。

プロファイルを公開または非公開に設定できる機能を設定に追加したいと考えています。誰でも見ることができるので、すでに公開されていますが、非公開機能を許可するにはどうすればよいですか?

基本的に、この部分( http://myapp.com/users/username)をユーザーがプライベートまたはパブリックに設定できるようにしたいだけです。

4

1 に答える 1

1

public/private ブール値の新しい列を追加します。

rails g migration AddIs_publicToUsers is_public:boolean
rake db:migrate

view/users/show.html.erb (またはユーザー ページがある場所) に以下を追加します。

<% if current_user.is_public %>
  *Paste in display html/erb for your user show page.
<% else %>
  Sorry. Is Private Profile. 
<% end %>

また、Rails 3 以下の場合は models/user.rb で、Rails 4 の場合は controller/users_controller.rb で、属性をアクセス可能にする必要があります。

レール 3:

attr_accessible :is_public

レール 4:

def user_params
  params.require(:user).permit(:is_public)
end
于 2013-03-25T17:20:56.680 に答える