轨道形式 - 介于新建和创建之间



我在标准轨道表单上新建和创建之间有一个步骤,我想将参数从我的"新"操作发送到"确认"再到"创建"。

如何在不从"新"操作创建相同(隐藏(表单并通过@order变量设置每个值的情况下发布来自"确认"操作的数据以创建?

我尝试通过link_to发送@order变量

=link_to orders_path(order: @order), method: 'post', class: 'f-sub' do
=image_tag "confirm.png"

但是我收到错误,指出我的order_params为空...

1 - 您可以将对象存储在会话中,直到确认页面。

在您的表格中:

<% form_for Order.new, url: save_session_path do |f| %>

在控制器中:

def save_session
session[:order] = params[:order]
redirect_to confirmation_path
end
def confirmation
@order = Order.new(session[:order])
end

2 - 通过控制器操作传递对象

在您的表格中:

<% form_for Order.new, url: confirmation_path do |f| %>

在您的控制器中:

def confirmation
@order = Order.new(params[:order])
end

最新更新