草庐IT

Current_Output

全部标签

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

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

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 - 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.

ruby - rake/Rspec : How to suppress/quiet/silent the first output line showing the command with --pattern ?

问题:如果我运行ServerSpec(基于RSpec)到Rake使用以下命令之一:rakerakespecrakespec:allrakespec:bundleexecrake...Rake将它执行的命令打印到stdout在serverspec输出之前:/usr/bin/ruby1.9.1-I/var/lib/gems/1.9.1/gems/rspec-core-3.1.6/lib:/var/lib/gems/1.9.1/gems/rspec-support-3.1.2/lib/var/lib/gems/1.9.1/gems/rspec-core-3.1.6/exe/rspec--pa

ruby - 非常基本的 ruby​​/sinatra/heroku/调试问题 : how to see output of puts and p?

我正在尝试构建一个部署在heroku上的非常简单的sinatra应用。我们的应用程序不会向网络浏览器输出内容,它会通过API与另一台计算机进行通信。所以我在使用该应用程序时仅向浏览器打印一些额外的调试信息的惯用技巧不起作用。我在相关应用程序中看到的示例代码显示使用了多个“puts”或“p”语句,或者看看发生了什么......输出到哪里,我可以在程序执行时或之后看到该输出。一般来说,如果您正在使用托管在Heroku上的代码,但它并没有按照您的意愿行事,那么在代码输出消息(例如“fooequals123”)的各个位置,最简单的方法是什么,这样您就可以看到那个输出来弄清楚代码中发生了什么?p

c++ - 我可以在堆栈展开期间使用 std::current_exception 吗?

是否可以在堆栈展开期间销毁的对象的析构函数中使用std::current_exception?Documentationoncppreference说:Ifcalledduringexceptionhandling(typically,inacatchclause),capturesthecurrentexceptionobject(...)但我不清楚堆栈展开是否是异常处理的一部分。在某些highest-rankedanswer关于stackoverflow作者假设这是可能的。我对我的编译器(g++(Ubuntu4.8.2-19ubuntu1)4.8.2)做了一些测试,似乎在这种情况下