【发布时间】:2015-08-06 23:14:09
【问题描述】:
a = Array.wrap(params[:a]).join(', ')
<% unless a.blank? %>
<%= a%>,
<% end %>
b = Array.wrap(params[:where]).join(' AND ')
<% unless params[:dedup] %>
table_name
WHERE <%= input_data_filter %>
<% unless b.blank? %>
AND <%= b %>
<% end %>
AND c - d <= <%= f%>
<% else %>
这是 hql.erb 文件的一部分,试图从中编写查询,我可以将 erb 文件的 unless 部分转换为 sql 函数
【问题讨论】:
-
嗯,那是一团糟。你可以做任何事情,尽管有些事情你不应该做。这是其中之一。将您的查询移至模型(我怀疑您是否需要原始 SQL,只需使用标准 ActiveRecord 方法)。将您的数据提取移动到控制器。并让视图只保留呈现逻辑。
-
我没有原始查询,只有它们的一些 .erb 文件,我被困在如何定义第一行并在 sql 中执行除非
-
啊,那么您是在使用 EBR 构建 查询吗?好吧,那是另一个故事了!好吧,您需要用更笼统的术语来说明您的问题。为什么需要将 ERB 转换为 SQL ?
标签: sql ruby-on-rails erb