wice_grid(ruby 在 rails 上):ERB 到 SLIM
wice_grid (ruby on rails): ERB to SLIM
我正在使用 wice-grid gem。
他们的示例显示了 .erb
中的视图,但我想将 .slim
用于我的项目,但无法将示例 erb
转换为工作 slim
.
# ERB renders and works perfectly
<%= grid(@tasks_grid) do |g|
g.column do |task|
task.id
end
g.column do |task|
task.title
end
end -%>
# Converted SLIM does not render properly
- grid(@tasks_grid) do |g|
- g.column do |task|
= task.id
- g.column do |task|
= task.title
我试过使用此 erb2slim 转换器,但它输出 end
,而 slim
不允许。
编辑:
解决方法(感谢楼下的帮助!)
# Generate grid
- grid = grid(@tasks_grid) do |g|
- g.column do |task|
- task.id
- g.column do |task|
- task.title
# Render content in a safe way
= content_tag(:div, grid)
= grid(@tasks_grid) do |g|
- g.column do |task|
- task.id
- g.column do |task|
- task.title
=
等于 ERB 模板中的 <%=
。它输出表达式。 -
计算但不像 ERB 中的 <%
那样输出。如果您查看 erb 模板,您会发现它只输出 grid(@tasks_grid) do
的 return 值,而不是 task.id
.
另请注意,转换器很少会 100% 完成工作,并且不能替代了解原始语言和目标语言。它们只是提供了一个起点,让这个过程变得不那么艰难。
我正在使用 wice-grid gem。
他们的示例显示了 .erb
中的视图,但我想将 .slim
用于我的项目,但无法将示例 erb
转换为工作 slim
.
# ERB renders and works perfectly
<%= grid(@tasks_grid) do |g|
g.column do |task|
task.id
end
g.column do |task|
task.title
end
end -%>
# Converted SLIM does not render properly
- grid(@tasks_grid) do |g|
- g.column do |task|
= task.id
- g.column do |task|
= task.title
我试过使用此 erb2slim 转换器,但它输出 end
,而 slim
不允许。
编辑: 解决方法(感谢楼下的帮助!)
# Generate grid
- grid = grid(@tasks_grid) do |g|
- g.column do |task|
- task.id
- g.column do |task|
- task.title
# Render content in a safe way
= content_tag(:div, grid)
= grid(@tasks_grid) do |g|
- g.column do |task|
- task.id
- g.column do |task|
- task.title
=
等于 ERB 模板中的 <%=
。它输出表达式。 -
计算但不像 ERB 中的 <%
那样输出。如果您查看 erb 模板,您会发现它只输出 grid(@tasks_grid) do
的 return 值,而不是 task.id
.
另请注意,转换器很少会 100% 完成工作,并且不能替代了解原始语言和目标语言。它们只是提供了一个起点,让这个过程变得不那么艰难。