如何处理与订单相关的两个操作

时间:2011-12-13 19:44:11

标签: ruby-on-rails ruby

我正在使用Rails 3.1。这是一个典型的电子商务应用程序。

我有两个步骤:

第1步:收集送货地址和帐单邮寄地址。 第二步:收集运输方式(地面运输,空运,次日送货等)。

订单包含一个送货地址,一个帐单邮寄地址和一种送货方式。

我使用标准REST并使用了orders_controller的edit方法来处理step1。

要处理我想使用

<%= form_for(@current_order) do |f| %>

但是这将把我带到orders_controller。我创建了一个名为shipping_methods控制器的新控制器来处理step2。

处理此类情况的最佳方法是什么。

这是我的路线文件

  resources :orders,    only: [:edit, :update] do
    resource :shipping_method
  end

1 个答案:

答案 0 :(得分:0)

如果您在输入发货数据之前实际发布表单,则必须找到一些方法来保留输入的所有信息,直到用户完成发货部件...

它可能会导致您的系统中出现一些“陈旧”订单(用户只填写第一部分并退出)。我建议使用javascript做类似向导的事情(Google上有无数关于如何做到这一点的例子)。