Ruby on rails 如何允许用户将其配置文件设置为私有或公共?

Ruby on rails 如何允许用户将其配置文件设置为私有或公共?,ruby-on-rails,ruby,authentication,user-defined-functions,Ruby On Rails,Ruby,Authentication,User Defined Functions,我有一个Rails 3应用程序,这是我想弄明白的 我已经有一个应用程序,用户必须登录才能使用,但他们的个人资料可以被公众查看。他们个人资料的URL是 我想在他们的设置中添加一个功能,在那里他们可以设置他们的配置文件为公共或私人。它已经是公共的,因为每个人都可以看到它,但是我如何允许私有功能呢 基本上,我只希望这个部分()能够由用户设置为private或public 为公共/私有布尔值添加新列: rails g migration AddIs_publicToUsers is_public:boo

我有一个Rails 3应用程序,这是我想弄明白的

我已经有一个应用程序,用户必须登录才能使用,但他们的个人资料可以被公众查看。他们个人资料的URL是

我想在他们的设置中添加一个功能,在那里他们可以设置他们的配置文件为公共或私人。它已经是公共的,因为每个人都可以看到它,但是我如何允许私有功能呢


基本上,我只希望这个部分()能够由用户设置为private或public

为公共/私有布尔值添加新列:

rails g migration AddIs_publicToUsers is_public:boolean
rake db:migrate
在视图/users/show.html.erb(或用户页面所在的位置)中添加:

轨道4:

def user_params
  params.require(:user).permit(:is_public)
end

那么你想要某种包含他们信息的“我的账户”页面吗?你说的“私人”是什么意思?当有人试图访问私人页面时,具体应该发生什么?格式正确的错误页?HTTP 404?403? 401? 通常,在数据库中保存一个变量,当有人试图访问URL时,检查数据库并发送相应的响应。不,他们已经有了在链接中显示其帖子的配置文件。每个人都可以查看它,即使没有登录,所以我想允许用户选择设置他们的个人资料为私人。当它被设置为private并且有人试图访问它时,它将显示say(“您未登录。请在此登录”),然后在您的个人资料的控制器中添加smth,如
重定向到:action=>“show”,除非currect\u user.logged?
。正如@Phrogz已经建议的那样,您要使用布尔
公共配置文件
字段扩展
用户
表。
attr_accessible :is_public
def user_params
  params.require(:user).permit(:is_public)
end