示例我想在管理部分中创建命令下拉列表。当用户选择一个时,例如
Purchase.all
User.where(:active => 1)
基本上,我会在创建一个功能齐全的后端之前在控制台中运行的任何常用命令。我知道这有点不同寻常,但我只是在寻找一种快速的方法来提供一些常见的管理查询。一旦命令运行,我希望它显示将在rails控制台中显示的确切输出。我已经安装了Hirb gem,它在控制台中格式化结果,并希望在视图中输出时显示格式。这完全可以实现吗?
答案 0 :(得分:2)
当然可以在您的操作中运行命令render it with Hirb并将输出传递给您的视图:
def action
result = run_command(params[:command])
Hirb::View.load_config
Hirb::View.render_method = lambda { |output| @hirb_output = output }
Hirb::View.render_output(result)
end
private
def run_command(command)
case command
when 'purchase_all'
Purchase.all
when 'active_users'
User.where(:active => 1)
end
end
在你看来:
<pre>
<%= @hirb_output %>
</pre>
但是,我会改用ActiveAdmin或RailsAdmin。