从ruby脚本或控制台渲染部分内容

是否可以从ruby脚本或rails控制台中渲染一个局部变量?

如何去做这件事?


取决于部分,它是做什么的,它调用什么方法。 但基本上你必须看看它使用了什么模板引擎(erb,haml)以及它做了什么调用(如果它调用其他内部API等)。 另外,如果您从数据库中获取任何数据(使用activerecord),则必须自己在脚本中建立与数据库的连接并获取数据。

ActiveRecord::Base.establish_connection :adapter => 'sqlite3', :database => '#{YOUR_DATABSE}'

建立连接后,请获取部分所需的所有数据。

除此之外,渲染是非常基础的。

def render(*args, &block)
    self.response_body = render_to_string(*args, &block)
end

render_to_string将打算调用模板引擎将其转换为html。 如果它的HAML例如会是这样的:

response = Haml::Engine.new(File.read("#{partial.html.haml")).render

如果您部分调用任何Rails API,则需要复制/或包含这些API,这会变得复杂

链接地址: http://www.djcxy.com/p/56739.html

上一篇: Rendering a partial from a ruby script or console

下一篇: Haskell: How to test a (reactive) FSM with quickcheck?