草庐IT

sql - 将查询合并为一个查询

全部标签

sql - Rails 3 Sum 两个领域的产品

我需要计算我的Rails3应用中两个字段的乘积之和(即相当于Excel的sumproduct函数)。Rails中是否有一种方法可以帮助解决这个问题?如果没有,那么使用自定义sql的Rails代码是什么?例如,酒店有很多房间。房间具有sqft(平方英尺)、数量(该尺寸)和hotel_id的属性。我想计算给定酒店中所有房间的总平方英尺。在SQL中,对于Hotel.id=8,我相信以下语句会起作用:selectsum(rooms.sqft*rooms.quantity)asSumSqftfromroomsinnerjoinhotelsonrooms.hotel_id=hotels.idwhe

ruby-on-rails - 检查 Ruby 数组的元素是否包含在另一个数组中

这个问题在这里已经有了答案:Howtodetermineifonearraycontainsallelementsofanotherarray(8个答案)关闭9年前。我正在尝试比较两个Ruby数组以验证第一个数组的所有元素都包含在第二个数组中。(不需要反过来。)例如:a=["hello","goodbye"]b=["hello","goodbye","orange"]这应该返回true。但是,我想不出一种方法可以让我做到这一点。任何帮助将不胜感激!

ruby-on-rails - 如何在 Rails Controller 操作的 RSpec 测试中指定查询字符串?

我有一个名为yearly_csv的操作。在此操作中,我执行两个操作,如需求和供应。defyearly_csvifdemand=='true'demand_csvelsesupply_csvendend我的View中有两个单选按钮来选择其中一个操作。现在我想在RSpec中单独测试每个操作。例如,一个供应规范和另一个需求规范。我的问题是如何将单选按钮值传递给yearly_csv操作(get)? 最佳答案 在RSpec的较新版本中,您必须使用params键声明查询字符串参数:get:yearly_csv,params:{demand:'t

ruby-on-rails - 构建一个 Rails 表单来过滤索引页面?

大家好,我在过滤系统中数千个贸易项目的展示时遇到了问题。根据我们正在构建的系统的规范,我们必须有一个表格,允许人们输入开始日期,然后输入以分钟为单位的间隔,以过滤项目的显示。我已经构建了我的辅助函数来返回该间隔期间内的所有交易,但我无法终生正确构建将在索引页顶部返回日期时间值和整数值的表单?有什么想法吗?我是否必须构建一个单独的模型对象来为其赋值,还是有更简单的方法? 最佳答案 在您的索引页面上,您可以像这样创建一个过滤器表单:getdo%>然后您的表单将使用查询字符串参数在您的页面上执行GET,然后您可以在您的Controller

sql - 在 Rails 中进行计数的正确方法是什么?

我有一个包含以下许多代码片段的Rails应用程序:Ouractivecommunityof我的问题是,这是计算观看次数的正确方法吗?看起来很“肮脏”,有没有更粗鲁的方法来计算?我可能在考虑命名范围,但我只是想确保这些类型的东西不会对性能产生更大的影响。谢谢你, 最佳答案 您不需要名称范围来执行计数。Account.where(:admin=>false).count但是命名作用域是使您的代码更具可重用性的绝佳方式。命名范围不会对您的应用程序产生任何明显的性能影响。 关于sql-在Rail

ruby - 如何在 Ruby 数组的所有元素之间插入一个新元素?

我有一个数组,想在所有元素之间插入一个新元素,类似于join方法。例如,我有[1,[],"333"]我需要的是[1,{},[],{},"333"]请注意,在所有元素之间插入了一个新的空散列。编辑:目前我拥有的是:irb(main):028:0>a=[1,[],"333"]=>[1,[],"333"]irb(main):029:0>a=a.inject([]){|x,y|x[1,{},[],{},"333",{}]irb(main):030:0>a.pop=>{}irb(main):031:0>a=>[1,{},[],{},"333"]irb(main):032:0>我想知道最好的方法。

ruby - 从 yaml 文件中读取数据并在 ruby​​ 中生成一个数组

我在yaml文件中有以下数据-----:Subject_listSubject1::Act1:A:Act2:BSubject2::Skill1::Act1:B:Act2:B:Skill2::Act1:B我需要从这个文件中读取数据并生成如下所示的输出-对于主题1,它将是这样的,因为它没有技能水平。表示数组的第一个元素为空。["","Act1","A"],["","Act2","B"]第二个主题是这样的——["Skill1","Act1","B"],["","Act2""B"],["Skill2","Act1","B"]我正在使用这些值生成一个prawnpdf表。任何帮助是极大的赞赏。我试

ruby-on-rails - 如何逐行递增地构建 ActiveRecord 查询?

我想使用运行时数据拼凑一个ActiveRecord查询。我的想法是……r=Person.where('last_nameLIKE?',foo)r.where('created_at但这并没有按预期工作。要使其正常工作,您必须将它们全部链接在一条线上...Person.where('last_nameLIKE?',foo)\.where('created_at我正在尝试找出一种方法将其分散到多行的单独操作中。 最佳答案 QueryInterface方法(如.where)返回一个新对象。所以你只需要坚持下去。见:r=Person.whe

ruby-on-rails - Rails - 如何发送包含在另一个表单中的表单?

我的观点是这样的结构:......@user%>......渲染部分从部分加载数据-有一个表单。表单字段已成功加载(如输入、提交输入、单选按钮等),但是当我查看生成的HTML时,呈现的表单中缺少和结束标记。这意味着当我从呈现的表单中单击提交按钮时,这个呈现的表单不会发送出去,而是发送“大”for-simple_form_for.如何使呈现的表单可发送?谢谢 最佳答案 简单地说,您不能有两个单独的嵌套表单。您可以使用accepts_nested_attributes_for嵌套关联表单-这取决于后端模型的结构,我将在下面详细说明。--

ruby - 在 Ruby 中使用单引号和双引号查询哈希有什么区别?

{"user"=>{"bio"=>"rubyist","created_at"=>"2011-05-03T15:21:46+02:00","email"=>"paul@pauldix.net","id"=>61,"name"=>"paul","updated_at"=>"2011-05-03T15:21:46+02:00"}}使用双引号和单引号有什么区别?:attributes=JSON.parse(last_response.body)["user"]attributes=JSON.parse(last_response.body)['user']第一种情况好像可以,但是第二种情况没