相关疑难解决方法(0)

Rails邪恶的宝石重定向与params

我正在使用邪恶的宝石来构建表单向导.在文档中,它使用的是current_user对象,但我想使用其他对象.我正在努力为redirect_to添加一个参数,所以我可以使用这个对象.

products_controller.rb

def create
  @product = current_user.product.build(params[:product])
  @product.ip_address = request.remote_ip

  if @product.save
    redirect_to product_steps_path # This is where I think I need to pass product object but not sure how
  else
    render 'new'
  end
end
Run Code Online (Sandbox Code Playgroud)

product_steps_controller.rb

class ProductStepsController < ApplicationController
  include Wicked::Wizard
  steps :apps, :templates

  def show
    @product = Product.find(params[:id])
    render_wizard
  end
end
Run Code Online (Sandbox Code Playgroud)

路线:

resources :products
resources :product_steps
Run Code Online (Sandbox Code Playgroud)

我用上面的代码得到的错误是:

ActiveRecord::RecordNotFound in ProductStepsController#show

Couldn't find Product with id=apps
Run Code Online (Sandbox Code Playgroud)

如何在这样的特定对象上使用邪恶的gem而不是文档中的current_user示例?

ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.2

3
推荐指数
1
解决办法
1885
查看次数