ruby-on-rails - Rails 在 ActiveRecord 中翻译原始 SQL
问题描述
我有这个 SQL 查询
sql = "select mt1.* from mail_templates as mt1 join mail_templates as mt2 where mt1.template_id = mt2.id AND mt1.technical_name='#{name}' AND mt2.festival_id=#{festival}"
如果我执行这个查询,ActiveRecord::Base.connection.execute(sql).first
它会返回一个数组,我需要一个 MailTemplate ActiveRecord。
我不知道该怎么做。
感谢您的帮助
解决方案
我通过使用找到了解决方案
sql = "select mt1.* from mail_templates as mt1 join mail_templates as mt2 where mt1.template_id = mt2.id AND mt1.technical_name='#{name}' AND mt2.festival_id=#{festival}"
MailTemplate.find_by_sql(sql)
推荐阅读
- python - Python水平条不显示时间戳数据的整个范围
- javascript - 使用 `react-hook-form` 库向组件写入测试
- google-analytics - 指定页面的页面引用
- angular - Angular Karma 测试原型功能
- java - 如何避免 Object.equals 方法的多个 if else 块?
- .net - .net 编译器错误“并非所有代码路径都返回值”任务方法
- mongodb - 如何在MongoDB中按多个分组
- mysql - 用于搜索列的 SQL 查询(SQL 查询中的帮助)
- git - 将本地合并到开发环境中的冲突
- unity3d - Unity 时间轴,播放动画片段和控制事件播放