我想在Rails中渲染多行文本,操作如下:
def mutli_text
render :text => 'Word1\nWord2'
end
我希望回复是:
Word1
Word2
不幸的是我得到了Word1 \ nWord2
任何帮助将不胜感激
(该操作必须呈现多行响应才能使自动完成jquery插件正常工作)
答案 0 :(得分:14)
"Word1\nWord2"
您必须使用双引号才能使用转义字符。
但是如果你想在浏览器中实际换行,你需要把它变成一个真正的html标签。
'Word1<br/>Word2'
甚至:
"Word1<br/>\nWord2"
答案 1 :(得分:2)
你实际上可以这样做:
(render :text => "line1\nline2").gsub("\n",'<br />')
它至少适用于视图中的#render(使用HAML)。我没有在控制器动作中尝试过它。
答案 2 :(得分:0)
只需将文字呈现为SELECT /*+ USE_HASH(x) */
ACTIVITY_DAY
, SUM(ORDERED_UNITS)
, SUM(ORDERED_AMT)
FROM (
SELECT ACTIVITY_DAY,ORDERED_UNITS,ORDERED_AMT FROM D_DAILY_ORDERS
WHERE REGION_ID = 1
AND MARKETPLACE_ID = 1
AND ACTIVITY_DAY BETWEEN TO_DATE('20160409','YYYYMMDD') AND TO_DATE('20160505','YYYYMMDD')
AND ID IN ('B019433MGC', 'B019433O4C', 'B00STUX0F0', 'B017SL40S6', 'B00ZHJDJ5W', 'B00STUX276', 'B017SL44RI', 'B00ST415S0', 'B00ST414O0')
UNION ALL
SELECT ACTIVITY_DAY,ORDERED_UNITS,ORDERED_AMT FROM D_DAILY_ORDERS
WHERE REGION_ID = 1
AND MARKETPLACE_ID = 1
AND ACTIVITY_DAY BETWEEN TO_DATE('20160501','YYYYMMDD') AND TO_DATE('20160505','YYYYMMDD')
AND ID IN ('B007V4YR5M', 'B00BHQ9CHI')
) x
GROUP BY ACTIVITY_DAY
ORDER BY ACTIVITY_DAY
;
即可。如果您愿意,甚至可以将内容类型更改为csv。
plain