Ruby代码美化,将长指令拆分为多行

2024-02-18

我们如何编写以下语句以提高可读性?

Promotion.joins(:category).where(["lft>=? and rgt<=?", c.lft, c.rgt]).joins(:shops).where(:promotions_per_shops => { :shop_id => shops_id }).count('id', :distinct => true)

以下内容无法编译

Promotion.joins(:category)
         .where(["lft>=? and rgt<=?", c.lft, c.rgt])
         .joins(:shops)
         .where(:promotions_per_shops => { :shop_id => shops_id })
         .count('id', :distinct => true)

syntax error, unexpected '.', expecting kEND
                     .where(["lft>=? and rgt<=?", c.lft, c.rgt])

也可以做

Promotion.joins(:category) \
         .where(["lft>=? and rgt<=?", c.lft, c.rgt]) \
         .joins(:shops) \
         .where(:promotions_per_shops => { :shop_id => shops_id }) \
         .count('id', :distinct => true)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ruby代码美化,将长指令拆分为多行 的相关文章

  • Ruby 中多维数组的帮助

    我有以下代码将字符串拆分为 3 个字节的组 str hello ix 0 iy 0 bytes tby str each byte do c if iy 3 iy 0 bytes ix tby each index do i bytes i
  • 红宝石边缘情况

    ruby 有一些边缘情况很难解释 因为解析会带来一些有趣的问题 我在这里列出其中两个 如果您知道更多 请添加到列表中 def foo 5 end this one works if tmp foo puts tmp to s end How
  • “没有可用的二元红宝石”是什么意思?

    每当我使用rvm install x x x 即使安装成功 我也会收到此警告 No binary rubies available for osx 10 12 x86 64 ruby 2 4 0 Continuing with compil
  • 如何计算带有偏移量的异或?

    我想用不同的偏移量进行异或计算以在计算中列出 例子 key 0 1 0 text 0 1 0 1 0 1 0 1 1 1 异或计算 key 0 text 0 key 1 text 1 key 2 text 2 key 0 text 3 ke
  • 如何从 Rails 中的 date_select 或 select_date 获取日期?

    Using select date给我回一个params my date with year month and day属性 如何轻松获取 Date 对象 我希望有类似的事情params my date to date 我很高兴使用date
  • Rails 4:资产未在生产中加载

    我正在尝试将我的应用程序投入生产 但图像和 CSS 资源路径不起作用 这是我目前正在做的事情 图像资源位于 app assets images image jpg 样式表位于 app assets stylesheets style css
  • 如何使用本地安装的gems执行Ruby程序?

    我已经使用安装了我的依赖项 bundle package 然后将它们传输到离线服务器并运行 gt bundle install local Using mime types 1 19 Using rest client 1 6 7 Usin
  • 使用 VCR 过滤敏感数据

    我正在使用 VCR gem 记录 http 交互并在将来重播它们 我想过滤掉 uri 请求中的实际密码值 以下是 uri 的示例 http services somesite com Services asmx Cabins Usernam
  • REXML - 如何提取单个元素

    我正在用 ruby 编写一些验收测试 其中涉及断言响应 XML 中值的存在 我的 XML 是这样的
  • 在 ruby​​ 中下载多个 FTP 文件,如 d*.txt

    我需要连接到 ftp 站点并下载一堆名为 D txt 的文件 最多 6 个 你能帮我用 Ruby 编写这个代码吗 下面的代码只是 ftp Net FTP new ftp server site ftp login user pwd ftp
  • 红宝石接球和效率

    catch在 Ruby 中意味着跳出深度嵌套的代码 在 Java 中 例如用Java也可以达到同样的效果try catch用于处理异常 但它被认为是糟糕的解决方案 而且效率非常低 在 Ruby 中 我们有处理异常的方法begin raise
  • Rails/Ruby 合并两个具有相同键、不同值的哈希值

    我有两个想要合并的哈希值 它们看起来像这样 Hello gt 3 Hi gt 43 Hola gt 43 第二个哈希看起来像 Hello gt 4 Hi gt 2 Bonjour gt 2 我想合并这两个哈希数组 使结果看起来像 Hello
  • Shoulda/RSpec 匹配器 - 条件验证

    在我的代码中 我使用 Shoulda 匹配器进行了以下验证 效果很好 it should validate presence of name 在我的模型中 我已将条件添加到验证中 validates presence of name if
  • Watir Webdriver 加载 Chrome 扩展

    我正在尝试使用 Watir 加载 chrome 扩展 但遇到了问题 我发现这个相关问题 能够启动带有 watir webdriver 加载扩展的 chrome https stackoverflow com questions 125867
  • 我可以让这个 Ruby 代码更快并且/或使用更少的内存吗?

    我有一个Array of StringRuby 中的对象由如下单词组成 animals cat horse dog cat dog bird dog sheep chicken cow 我想将其转换为另一个Array of String对象
  • 子文件夹和关系中的 Rails 模型

    我在自动加载的文件夹中组织了一些轨道模型 config autoload paths Dir Rails root join app models 我可以直接使用所有模型 例如Image first file name 但是当我尝试通过关系
  • Rails 3.2:用 json 序列化中的空字符串替换 null 值

    我正在使用 Rails 3 2序列化 http www simonecarletti com blog 2010 04 inside ruby on rails serializing ruby objects with json 将 ru
  • Ruby ActiveRecord 和 sql 元组支持

    ActiveRecord 是否支持 where 子句中的元组 假设底层数据库支持 结果 where 子句看起来像这样 where name address in John 123 Main St I tried Person where n
  • 使用正则表达式搜索 Ruby 数组

    你好 我有一个小的 ruby 函数 它可以分割出一个 Ruby 数组 如下所示 def rearrange arr from to sidx arr index from eidx arr index to arr sidx arr sid
  • sqlite3-ruby gem:无法构建 gem 本机扩展

    Update 看看这个后续问题 Windows 上的 Gem 更新 它坏了吗 https stackoverflow com questions 134581 gem update on windows is it broken 在 Win

随机推荐

  • Xcode 5 崩溃——Xcode 意外退出

    当我在项目导航器中选择任何文件或尝试编辑它时 App Store 中的 Xcode 5 崩溃 我已经删除了应用程序的所有插件和派生数据 但它不断崩溃 有谁知道如何解决这个问题以及为什么会发生这种情况 以下是错误的第一部分 Exception
  • 使用 ncurses 在 Linux 中构建 HelloWorld C++ 程序

    我成功跑了sudo apt get install libncurses5 dev 然后在我的 Eclipse 窗口中尝试构建以下内容HelloWord cpp程序 include
  • 查找数字数组中最大差异的算法

    我有一个包含几百万个数字的数组 double const data new double 3600000 我需要遍历数组并找到范围 数组中的最大值减去最小值 然而 有一个问题 我只想找到最小值和最大值在 1 000 个样本之内的范围 所以我
  • 抽屉式导航无法关闭

    我的应用程序中的导航抽屉没有关闭 我正在使用活动而不是片段 当我单击中的任何项目时listview 它会按应有的方式打开其他活动 但当我回去时 抽屉仍然打开 我尝试过使用DrawerLayout closeDrawers 但它不起作用 如何
  • 如何缩短 C# 中的路径并保持其有效

    我工作的地方 目录的名字很长 而且目录树也很长 而且我遇到了外部应用程序中文件夹路径名太长的问题 我无法更改此外部应用程序 但我可以给它缩短的路径名 我知道微软操作系统可以缩短路径名 例如转换C TooLongName TooLongSub
  • 通过 Id 和 Name 获取下一个和上一个 sql 行,EF?

    假设我们在 SQL Server 表中有以下数据 按名称排序 Id Name LName 5 Abbas Dayyan 3 Mohammad KD 4 Nima Ahmad 1 Omid Zangene 2 Pedram Ahmadi 我们
  • 使用声纳 checkstyle 插件尊重 @SuppressWarnings

    是否有可能使用 Checkstyle 插件配置 SonarQube 5 1 以遵守 SuppressWarnings deprecation 注解 我不想关闭 避免使用已弃用的方法 规则 我只想 SonarQube 尊重 SuppressW
  • 跨多个进程使用双端队列对象

    我试图减少读取大约 100 000 个条目的数据库的处理时间 但我需要它们以特定的方式格式化 为了尝试做到这一点 我尝试使用 pythonmultiprocessing map函数工作完美 只是我似乎无法获得任何形式的队列引用来跨它们工作
  • 为什么此 WebGL 帧缓冲区使用会抛出 FRAMEBUFFER_UNSUPPORTED?

    我正在尝试创建一个 WebGL 选择缓冲区 有人能看到我在这里做错了什么吗 我在 Mozilla 5 0 X11 Linux x86 64 rv 2 0b3pre Gecko 20100724 Minefield 4 0b3pre 和 Ch
  • Mule Salesforce Batch 中的错误处理

    我正在尝试将一组帐户从 CSV 文件加载到 Salesforce 中 我已经配置了常用的 Datamapper 带有批提交的 Upsert SFDC 步骤和仅处理失败的批步骤 目前为日志 我的 OnComplete 有一个简单的记录器 我故
  • 如何处理 Mac 上 VS Code 中的 C++ 头文件 #include 错误?

    我的 Mac 上的 VS Code 产量 包含错误 for 头文件 and 第三方库 wxWidgets在这种情况下 我阅读了我能找到的所有内容 调整了 c cpp properties json 中的 includePath 设置 但没有
  • JMeter 框架

    我最近开始学习 JMeter 来对我们的应用程序进行性能测试 我有一个测试计划 jmx 并使用 Jenkins Ant 定期运行它 到目前为止一切都很好 我的问题是 我们有一个关键字驱动的框架 TestNG 等用于功能测试工具 QTP Se
  • 从 PDO 准备好的语句中检索(或模拟)完整查询

    我偶然发现这个问题 https stackoverflow com questions 210564 pdo prepared statements从两年前开始 在准备好的语句上调用 PDOStatement execute 时 有没有办法
  • ModuleNotFoundError:没有名为“telethon”的模块

    我已经使用以下代码安装了 telethon sudo pip3 install telethon 我尝试重新安装它并收到以下消息 Requirement already satisfied pyasn1 gt 0 1 3 in usr lo
  • vb6中删除字符串左右两侧的某些字符(TrimChar)

    我想删除字符串中一些错误使用的某些字符 我想只删除此文本之外的点 正如你所看到的 我不能为此使用替换 我必须找到一种方法来仅删除字符串左侧和右侧的字符 而这些点只是我要删除的字符的示例 我有一系列不需要的字符 所以在处理之后字符串应该看起来
  • OPENGL混合功能——以分层的方式缓慢替换颜色

    我想做的是在亮红色 1 0 0 1 上添加带有 alpha 0 1 0 0 0 2 的深红色 对于第一层 它工作正常 结果是 0 9 0 0 1 然而 当红色值达到 0 5 时 它不能低于该值 第一层用以下等式进行演示 并且工作正常 glB
  • Javascript正则表达式多重匹配[重复]

    这个问题在这里已经有答案了 我正在尝试使用 javascript 在具有查询字符串参数的 url window location href 上执行正则表达式 但无法弄清楚如何执行此操作 就我而言 有一个查询字符串参数可以重复自身 例如 qu
  • ZF2 fileprg 与集合中的文件

    我无法得到fileprg用于处理集合中的文件的插件 我正在尝试使用上传多个文件FormCollections 但在 form gt getData 没有与我的收藏或文件相关的密钥 我用简单的方法测试了表单和 fileprgfile inpu
  • 在 HTML 省略号下划线

    我在用text overflow ellipsis剪切锚点内跨度内的文本 当我悬停时 省略号字符没有下划线 这会导致一个小间隙 有没有办法来解决这个问题 是的 你可以这样做 设置text decoration none而不是使用border
  • Ruby代码美化,将长指令拆分为多行

    我们如何编写以下语句以提高可读性 Promotion joins category where lft gt and rgt lt c lft c rgt joins shops where promotions per shops gt