我有一个控制器,我想将文本呈现到/views/test/index.html.erb:
class TestController < ApplicationController
def index
if testStuff() do
<render text to view>
end
end
private
testStuff()
return true
end
end
最简单的方法是什么? 谢谢你的回答!
答案 0 :(得分:0)
执行控制器rails的方法索引后,将尝试加载名为index.html.erb(或您使用的任何其他模板)的视图。 您可以在索引中声明成员,该成员将可用于视图,例如:
def index
@text = "Hello world!"
end
然后在你看来:
...
<span><%= @text %></span>
...
如果您的@text变量包含您信任的html,请在视图中使用@ text.html_safe。
答案 1 :(得分:0)
尝试将文本分配到实例变量中。像:
class TestController < ApplicationController
def index
if testStuff() do
@text = "Text what you want to render"
end
end
在视图中
<%= @text %>
答案 2 :(得分:0)
您可以像这样呈现为json
def index
if testStuff() do
@category_lists = CategoryList.get_categories(current_user.id)
respond_to do |format|
format.html # index.html.erb
format.json { render json: @category_lists }
end
end
end
答案 3 :(得分:0)
虽然不好,但您可以将测试移至视图:
class TestController < ApplicationController
helper_method :is_test?
def index
end
private
def is_test?
return true
end
end
然后在视图中:
<% if is_test? %>
<span>Some text here</span>
<% end %>