如何在加载视图时调用rails控制器上的ruby?

时间:2012-11-22 19:11:22

标签: ruby-on-rails ruby view controller

我对Rails很新,基本上我想做的很简单,当加载视图时我希望它调用执行ruby脚本的控制器并在我的视图上渲染由此脚本生成的图像,这可能吗?或者我应该在加载视图之前调用脚本并只检索生成的图像吗?

3 个答案:

答案 0 :(得分:2)

首先,我建议你去学习一个链接,以获得你的帮助 ruby on rails tutorial

回答你的问题 在rails控制器首先被加载,每个视图都与一些控制器动作相关联,例如,如果你有用户控制器(app / controllers / users_controller.rb),并且在show中你想要将用户图像显示为个人资料图片,你可以做什么是

def show
  @user = User.find(params[:id])
end

并在相应的视图中(app / views / show.html.erb)

<img src = <%= @user.image_path %> />

答案 1 :(得分:0)

我会在页面加载时检索图像,用css隐藏它并随时用你的javascript加载它。我没有看到在页面加载时没有调用它的重要原因。

答案 2 :(得分:0)

在RoR中,控制器操作正在渲染视图,因此您可以将其设置为初始加载本身。

例如,您拥有Users控制器,您需要在索引视图中显示所有用户图像。

控制器/ users_controller.rb

def index
  @users = User.all
end

视图/用户/ index.hrml.erb

<% @users.each do |user| %>
  <img src=<%= user.image_path %>> </img>
<% end %>