【问题标题】:How to display a resource from a different controller?如何显示来自不同控制器的资源?
【发布时间】:2014-08-26 05:21:53
【问题描述】:

我正在为一个网站创建一个主要是静态的主页,除了一个需要从模型数据库中提取 Web 链接的小容器。主页视图位于我在开发早期创建的home_controller 中。我现在创建了link 资源和links_controller

我对 Rails 了解不多,到目前为止我一直在做的是在索引视图中为它们指定的控制器显示资源。但是,我需要在 home_controller 的索引视图中显示此资源。

有人可以指导我朝着正确的方向前进吗?

【问题讨论】:

  • 您可能正在寻找渲染或重定向?从它的声音来看,重定向可能是您正在寻找的东西,或者您想要的是将一些相关位移动到部分中并简单地在两个页面上呈现该部分? (请注意,控制器中的渲染与视图中的渲染不同)...您的问题需要更多上下文...如果您包含控制器和相关视图可能会有所帮助...
  • 我有两个控制器,home_controllerlinks_controller。家庭控制器只有一个视图,index。我还有另一个控制器links_controller,它管理模型数据库后面的 REST 以获取链接。我需要在home_controller的索引视图中显示这些链接,不知道该怎么做。

标签: ruby-on-rails resources


【解决方案1】:

执行查询以获取home_controllerindex 操作中所需的链接对象,并根据需要将其显示在视图中:

# HomeController

def index
  # other code
  # @links = Link.all  # or any other query you may want to do
end

# in the view index.html.erb
<% @links.each do |link| %>
<%= link.url %> <br/>
<% end %>

根据您的需要自定义它。

【讨论】:

  • 太棒了。我没想到这么简单。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-08-01
  • 1970-01-01
  • 2011-09-14
  • 2016-08-29
  • 2021-03-15
  • 1970-01-01
  • 2020-09-04
相关资源
最近更新 更多