ruby-on-rails - 从 ruby​​ 脚本或控制台渲染部分

标签 ruby-on-rails ruby-on-rails-3

是否可以从 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,这会变得复杂

关于ruby-on-rails - 从 ruby​​ 脚本或控制台渲染部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8538798/

相关文章:

mysql - 导轨 : Querying with an Array

ruby - 上传数据库中的图片

ruby-on-rails - 如何将 id 传递给新用户路径?

ruby-on-rails - 轮胎elasticsearch自动用映射中的哈希索引记录

jquery - 如何在rails中通过collection_select进行ajax搜索?

ruby-on-rails - RSpec请求测试合并了POST JSON参数中数组中的哈希

mysql - 如何将Rails服务器设置为apache?

ruby-on-rails - 使用 Rails 3.2.22.2 时,我可以使用的最高 Ruby 版本是多少?

ruby-on-rails - 数据何时应包含在 Rails 自己的模型中?

ruby-on-rails - 包括模块在开发中工作,在生产中启动时失败?