【问题标题】:Rails: view based on a different model-controllerRails:基于不同模型控制器的视图
【发布时间】:2013-04-28 14:54:49
【问题描述】:

我正在使用两个不同的模型和控制器 - 比如说 productscheckout,但我希望 checkoutproduct 编号排序。 (意思是5号商品结账,7号商品结账等)

我该怎么做?我是否应该在products 下使用另一个view,但将其连接到checkout 控制器和模型?我怎样才能做到这一点?我需要配置什么以及在哪里?路线?其他的?

或者,我是否应该使用checkout 视图,但以某种方式确保视图的ID/编号基于products?我怎样才能做到这一点?我需要配置什么以及在哪里?路线?其他的?

【问题讨论】:

  • 这两个模型之间有什么样的关联? 1:n?
  • 产品has_many结帐

标签: ruby-on-rails ruby-on-rails-3 model-view-controller view model


【解决方案1】:

要根据相关产品呈现所有结帐,您可以执行以下操作:

routes.rb

resources :checkouts

checkout_controller.rb

def index
  @checkouts = Checkout.order("product_id asc")
end

app/views/checkouts/index.html.erb

<% @checkouts.each do |c| %>
  <%= c.inspect %>
<% end %>

【讨论】:

  • 我只想要一次结帐,每个用户一个结帐。如何将其包含在 product 的视图中?
  • 用户如何与产品或结帐相关联?请给我更多关于用户模型的信息。
  • 这有关系吗?我如何在视图中引用另一个类/控制器(当前类/控制器除外)?我不能以某种方式引用它吗?假设我在product 视图中,我不想从那里启用checkout,我如何引用checkout 类?我需要将checkout 类/控制器移动到product 一个吗?
  • 您可以随时在产品控制器或任何视图中调用 Checkout.all。对不起,我不太明白你的问题:)。
  • 同样的问题,更详细:stackoverflow.com/questions/16375921/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多