草庐IT

Do-Stuff

全部标签

ruby-on-rails - Rails 中的胖模型 : How do I return hash (errors) or object (when success)

我有一个Order模型,我正在尝试将业务逻辑移到Order而不是OrderController中。这是我面临的问题:classApi::V1::OrdersController所以order.checkout_cash方法是我在订单模型中实现的业务逻辑。我必须知道它是否有效或返回错误。这是我在订单模型中的代码:defcheckout_cash(current_retailer,product_ids_with_quantities,member_external_id)puts"CASH!!!"order=current_retailer.orders.buildorder.payme

ruby-on-rails - rails 5 : How do I reference I18n translations from another yaml config file?

我有一个配置文件:#config/meta.ymlbase_meta:title:'Top10Cats'它有一个对应的初始化器:#config/initializers/meta.rbMETA=YAML.load_file("#{Rails.root.to_s}/config/meta.yml")我可以像这样访问标题:META['base_meta']['title']#=>"Top10Cats"但是,我想国际化我的元数据。我相信这应该由现有的locales/yaml文件处理。如何引用现有翻译?#config/locales/en.ymlen:title:'Top10Cats'我试过使

ruby-on-rails - Rails 上的 Ruby + Active_Record : How do I include child counts in result?

我想出了如何通过在文件夹模型中创建as_json方法将子项包含在to_json结果中。defas_json(options={})super(options.merge(:include=>{:children=>{}}))end上面的代码给了我一个child的列表,但我想要的是包括计数而不是child的列表。我还想将其过滤为仅“活跃”的child。我似乎想不出一个有效的方法来做到这一点。我正在使用以下代码返回文件夹列表。defindex@folders=Folder.all(:order=>"Name")respond_with(@folders)do|format|format.j

ruby - 是否为 :include inside a sunspot/solr searchable method do anything?

我首先使用以下包含语句对我的solr索引的2个版本进行了基准测试:searchable(:auto_index=>false,:auto_remove=>true,:include=>{:account=>true,:user_practice_contact=>[:city],:user_professional_detail=>[:specialty,:subspecialties]})do第二个:searchable(:auto_index=>false,:auto_remove=>true)do我原以为包含的版本会出现减速,但结果如下:版本包含:Benchmark.measur

ruby-on-rails - Rails 中的 "respond_to do |x| .. end"是什么 Ruby 语言结构?

我是ruby​​和rails的新手。有人可以指出以下结构是什么吗?我在方法(def)中看到了respond_to结构。那么它是方法中的方法吗?我的意思是我试图理解这里的语言结构。我确实了解它的功能,即以给定格式发送响应。respond_todo|format|format.html#index.html.erbformat.json{renderjson:@posts}end 最佳答案 语言构造是一个rubyblock。但是,如果您真的想了解respond_to,这里有一篇博文提供了很好的概述Howdoesrespond_towor

ruby-on-rails - 无法解析 CSV 文件 - "CSV::MalformedCSVError: Unquoted fields do not allow\r or\n"

我正在尝试解析上传的CSV文件。这是完整的错误消息:[Worker(host:PC.localpid:69594)]JobImportJob(id=4)FAILED(3priorattempts)withCSV::MalformedCSVError:Unquotedfieldsdonotallow\ror\n(line1).CSV文件如下所示:A1;A2;A3;A4;A5B1;B2;B3;B4;B5C1;C2;C3;C4;C5这就是我循环遍历CSV文件中数据的方式:data=SmarterCSV.process(file,{:col_sep=>';',:chunk_size=>100,

ruby - Ruby 读取 "do"和 "end"的方式与读取 "{"和 "}"的方式相同吗?

在Ruby中编写block有两种不同的语法。有do|something|...end还有{|something|...}我意识到这样做只是用括号替换关键字“do”和“end”。这让我想知道,当Ruby使用这两种语法时,它处理它们的方式是否有任何显着差异。或者Ruby是否以相同的方式交替处理它们?如果它们完全可以互换,那么为什么要同时包含两者? 最佳答案 不,它没有。作为Ruby的一般规则,如果两个东西看起来很相似,你可以打赌它们之间存在细微差别,这使得它们中的每一个都是独一无二的和必要的。{和}并不总是起到block分隔符的作用。当

ruby-on-rails - rails : How do I add an additional parameter to resource-based link_to call?

我在routes.rb中定义了一个资源,如下所示:map.resources:users我喜欢使用最干净的link_to选项,它是:link_to@user不过,我想在此调用中添加一个附加参数:“view=local”如果我使用user_path,我会这样做:link_touser_path(@user,{:view=>'local'})有没有办法在不显式包含user_path函数的情况下获得相同的结果?理想情况下,我会做类似的事情:link_to@user,{:view=>'local'}但这似乎不起作用。 最佳答案 不,你不能。

ruby - RFC2616 : Do I really need to set WWW_Authenticate when returning 401?

根据RFC2616如果我返回401以响应对我的(Ruby)服务器的请求,我“必须包含一个WWW-Authenticateheader字段”。这是真的吗?不设置标题似乎没有负面影响。我将Merb用作Web框架,它不会强制我设置header。我是不是遗漏了什么,或者这条规则在违反时更受尊重?Web框架是否应强制开发人员在返回401时设置header? 最佳答案 问题是您是否希望用户能够从401失败导航到以后的成功身份验证。如果您未能提供WWW-Authenticateheader,那么您正在将401的含义从“您必须提供凭据”更改为“我们

ruby-on-rails - rails : How do I solve the OCIError: ORA-02289: sequence does not exist error?

我有一个名为“Carrier”的模型。在我的Controller中,当我执行Carrier.create(data)时,出现此错误:OCIError:ORA-02289:sequencedoesnotexist:selectcarriers_seq.nextvalidfromdual这是我Controller中的代码:classCarriersController"index")endend我已经做了一些谷歌搜索,我发现了这两个关于解决方案的网页:http://niranjansarade.blogspot.com/2011/03/avoid-oracle-sequence-durin