草庐IT

current_account

全部标签

ruby-on-rails - 如何访问模型中的 current_user 对象?

我正在尝试在我的“团队”模型中编写一个方法,但current_user显示此错误#的未定义局部变量或方法“current_user”defset_default_urlifcurrent_user.id==self.user_id"/assets/default_black_:style_logo.jpg"else"/assets/default_:style_logo.jpg"endendcurrent_user方法适用于其他模型和Controller。我是这样调用这个方法的。has_attached_file:logo,:styles=>{:medium=>"200x200#",:

ruby-on-rails - Rails 5,action cable 和 current_user

所以我有这个用例,我在Controller(使用ApplicationController.renderer)中呈现一条消息,然后将其广播给几个用户。广播也在同一Controller内部执行。当对某个对象执行更新时,这两个操作都会被触发。问题是,我需要访问渲染View中的current_user对象,当然,我不能将当前用户渲染为局部变量,因为这样消息将与广播消息的用户一起发送而不是将看到该View的最终用户。因此,在阅读了几篇博文和Rails文档后,我将使用cookie的身份验证设置为actioncable支持。我的问题是:如何在呈现的View中访问最终用户的对象(current_us

ruby-on-rails - Stripe Connect API (Ruby) 用 "Managed Account": delete bank account, 添加多个银行账户

我正在使用StripeAPIReference实现StripeConnectAPI必要时。使用该引用文献我无法解决两个问题:1)是否可以删除银行账户?如果是这样,如何?我试过在银行帐户对象上调用标准的delete和destroy方法,以及在account.bank_accounts.destroy_all/。account.bank_accounts.first=nil似乎也不起作用。2)是否可以添加多个银行账户?父Account对象有一个.bank_accounts的事实使这看起来应该是可能的,但我能找到添加银行账户的唯一方法是使用account.bank_account=允许您创建

ruby - 在 Padrino 上模拟 current_account 以进行 rspec 测试

我正在尝试测试依赖于Padrino::Admin::AccessControl提供的current_account的padrinoController为此,我需要模拟current_account。代码是这样的:App.controller:postdopost:create,map=>'/create'doPost.create:user=>current_accountendend和rspec:describe"Postcreation"doit'shouldcreate'doaccount=Account.create:name=>'someone'loggin_asaccoun

ruby-on-rails - 如何限制 current_user 每个时间段向订单添加超过 3 个 order_items?

我正在使用Rails建立一个具有特定销售模式的商店。我需要允许用户每30天只向他的订单添加3件商品。30天计数器应在添加第一个order_item时开始。一旦30天到期,用户将能够添加3个订单。例如,如果30天没有过去,用户添加了两个order_items,他仍然可以在30天内再添加一个order_item。因此,如果用户尝试添加超过3个项目以显示错误消息并忽略将order_items保存到current_user的订单。我有产品、订单、order_items、用户。我想我应该向用户模型添加一些东西,但我不确定是什么。order_items_controller.rbdefcreate

ruby-on-rails - 为什么在 Controller 中渲染时调用 current_user?

尝试访问我的sessionsController的登录方法时出现以下错误:JWT::DecodeError(NilJSONwebtoken):lib/json_web_token.rb:11:in`decode'app/helpers/sessions_helper.rb:15:in`current_user'app/controllers/api/sessions_controller.rb:11:in`create'如果我在我的Controller响应中注释掉我的renderjson:user,一切都很好,除了我需要响应用户...为什么current_user方法通过session

ruby-on-rails - 你如何通过 Clearance 和 Pundit 邀请另一个用户到 "team"或 "account"或 "project"?

我有一个带有Clearance和Pundit的Rails应用程序,我正在尝试创建“团队”,“团队负责人”可以在其中邀请其他用户加入他们的团队。我想做somethingsimilar至devise_invitable,但有清关。这是我的计划:通过注册表单注册网站的用户会自动分配一个唯一的团队ID,并成为“团队负责人”。他们在表格上看不到此ID。(另一种方法是创建一个在注册时保存的唯一团队名称。)创建一个before_filter以在注册时分配团队ID和团队负责人的最佳方法是什么?em>团队ID或名称是唯一的,每个用户只能属于一个团队。关联看起来像这样:团队has_many:users用户

ruby-on-rails - rails : How to access current controller in an Observer?

我需要访问当前Controller或从观察者方法中发出通知。classSomeObserver 最佳答案 正如其他人所说,从观察者访问Controller在某种程度上违反了MVC原则。给出的答案也适合您的特定用例。但是如果您需要更通用的解决方案,您可以尝试调整RailsSweepers的工作方式。Sweepers是普通的观察者,但它们提供对Controller的访问,如果从Controller操作调用观察者。这是通过同时使用清扫器作为观察者和Controller过滤器来实现的,这很容易实现,因为观察者是单例的(即它们包含Single

Ruby:如何推断 "current" gem 名称?

我知道以下内容来获取Gem的询问规范:spec=Gem::Specification.find_by_name('my_gem')有没有办法以编程方式识别“此”gem的名称,以便可以以可重用的方式重写上述内容?换句话说,如何在运行时从一些正在执行的Ruby代码中获取父gem的名称? 最佳答案 要查找当前源文件的gem规范(假设它是lib目录中的源文件):require'rubygems'searcher=ifGem::Specification.respond_to?:find#ruby2.0Gem::Specificationel

ruby-on-rails - Rails 路由范围默认基于 current_user

我有一条类似这样的路线:scope":department",department:/admin|english|math/,defaults:{department:'admin'}是否可以使此路线的默认部门基于current_user.department.name?如果这不可能,还有什么方法可以解决我的问题。问题是除非另有说明,否则我希望所有链接都默认为当前范围。我目前在很多地方都在做以下事情:#linksto/math/studentslink_to'students',students_path(department:current_user.department.name.