草庐IT

user_permissions

全部标签

ruby-on-rails - 设计:覆盖 current_user(为用户设置不同的类)

我想这样做:应用程序Controller.rb:classApplicationController但还是没有出去覆盖current_user日志:https://gist.github.com/anonymous/e0a5fb593b020b16a0cd2ae9d539b92a 最佳答案 这对我有帮助:classApplicationController 关于ruby-on-rails-设计:覆盖current_user(为用户设置不同的类),我们在StackOverflow上找到一个

ruby-on-rails - Rails - 为什么在 sign_in 方法中使用 self.current_user = user

我已经完成了RubyonRailsTutorial迈克尔·哈特尔。我知道一些关于实例变量、getter和setter的基本概念。登录方法是heredefsign_in(user)cookies.permanent[:remember_token]=user.remember_tokenself.current_user=userend现在我卡在了这条线上self.current_user=user我发现这个相关question,但我还是不明白。登录后,用户将被重定向到另一个页面,因此@current_user将为nil。Rails只能从cookie或session中获取current_

ruby-on-rails - Capistrano + Whenever gems - bin/rails : Permission denied

我配置了一个可以正常部署和工作的生产环境。虽然我遇到了一个我想不通的附属问题。我正在运行Whenevergem来执行几个cron作业,Whenevergemcapistrano实现使它们正确部署并且脚本正在执行。尽管在whenever.log中我收到以下输出:/bin/bash:bin/rails:Permissiondenied该脚本使用运行程序从RSS提要进行更新,尽管我使用Capistrano部署到新服务器,但它在以前的生产部署中没有发生任何事故。我四处搜索并找到了这个question,尽管每次部署时,我都必须使bin/rails可执行(由于来自Capistrano的日期戳部署)

ruby-on-rails - 设计身份验证 gem : How to save the logged in user id?

我在我的RubyonRails3应用程序中使用DeviseRubygem。当登录用户创建我的一个模型时,我想将他们的用户ID保存为创建它的人。我该怎么办? 最佳答案 创建一个迁移文件,其中包含一个名为user_id的integer类型的列,这是存储关联的位置。(有关如何执行此操作的详细信息,请参阅migrationguide)。在您的模型中,添加:belongs_to:user(有关详细信息,请参阅associationsguide)在模型的Controller中,在创建操作中添加@your_model.user=current_u

ruby-on-rails - 在 Rails 3 中使用 Devise 测试 'current_user'

我刚刚开始使用Ruby和Rails,尝试使用Rails3进行设计。我有一个围绕帖子列表的循环,每个帖子都有一个关联的用户。我只想显示与当前用户关联的那些帖子的编辑控件。(上面是简化的,并且是根据内存,所以我确信语法不完全正确-但你明白了要点。)如果没有用户登录,帖子将按预期显示-有一个Show链接,但没有Edit链接。但是,如果我完全登录,所有的Edit链接都会显示,甚至是其他用户创建的第一个帖子。我已在控制台中验证User.find(1)!=User.find(2),但由于某些原因current_user=post.user无论当前谁登录,计算结果都为真。这是因为current_us

ruby-on-rails - Rails 教程 3 第 7 章 : User Model Rspec Test Failing

我一直在成功地遵循Rails教程3,直到我到达第7章并实现了用户模型,现在我的rspec一直失败。这是我的user.rb文件输出classUsertrue,:length=>{:maximum=>50}validates:email,:presence=>true,:format=>{:with=>email_regex},:uniqueness=>{:case_sensitive=>false}validates:password,:presence=>true,:confirmation=>true,:length=>{:within=>6..40}before_save:encr

ruby-on-rails - 上帝没有运行 : The server is not available (or you do not have permissions to access it)

我正试图让上帝启动我的重新请求队列。但是,当我运行godloadconfig/resque.god时,它返回服务器不可用(或者您没有访问它的权限)这是我的resque.god文件:rails_env=ENV['RAILS_ENV']||"production"rails_root=ENV['RAILS_ROOT']||"/Users/andrewlynch/sites/wellness/wellbot"God.watchdo|w|w.name="resque-worker"w.group="resque"w.interval=60.secondsw.dir="#{rails_root}

ruby-on-rails - Rails devise 求助路由报错 No route matches "/sessions/user"

当我登录我的页面时,我会自动转到路线:http://localhost:3000/sessions/user我得到这个错误:RoutingErrorNoroutematches"/sessions/user"我在此处的用户文件夹中创建了一个名为sessions_controller.rb的Controller:classUsers::SessionsController"Youhavebeenloggedout."enddefcreateuser=User.authenticate(params[:login],params[:encrypted_password])ifuserses

ruby-on-rails - CanCan - "user"参数为 nil - Rails 4

我正在使用Rails4.0.1和ruby​​2.1.1。我正在尝试将cancan与rails_admin集成。我的application_controller.rb看起来像这样helper_method:current_userprivatedefcurrent_user@current_user||=User.find_by(email:session[:user_id])ifsession[:user_id]end我的current_user辅助方法在应用程序的其余部分工作正常。我的ability.rb看起来像这样classAblityincludeCanCan::Abilityd

ruby-on-rails - 没有路线匹配 [GET] "/users/sign_out"rails 5

当我尝试注销时,出现没有路由匹配[GET]"/users/sign_out"的错误。这是我的注销链接标签。下面是我的User模型和Devise相关的路由:Rails.application.routes.drawdodevise_for:usersdoget'/users/sign_out'=>'devise/sessions#destroy'endroot'books#index'resources:booksdomemberdoput"like",to:"books#upvote"endendend这是我的设计.rbconfig.sign_out_via=:get