邪恶的宝石Rails - 如何创建一个新的对象

时间:2013-02-02 13:18:33

标签: ruby-on-rails controller

Wicked Gem Wiki上的Building Partial Objects Step by Step页面解释了如何使用wicked逐步创建对象。

但是如何创建新的Product对象?

我必须在ProductsController的新操作中执行此操作吗? 我必须在哪里重定向到?

2 个答案:

答案 0 :(得分:3)

以下声明在Building Partial Objects Step by Step页面中给出。

This also means to get to the create action we don't have a product_id yet so we can either create this object in another controller and redirect to the wizard, or we can use a route with a placeholder product_id such as [POST] /products/building/build in order to hit this create action.

您可以在另一个控制器中创建对象并重定向到向导,或使用带占位符的路径来点击创建操作。

答案 1 :(得分:1)

以下是我的应用程序中为我工作的示例

class RegistrationsController < Devise::RegistrationsController
  protected

  def after_sign_up_path_for(resource)
    user_background = resource.build_user_background
    user_background.save
    user_background_build_path(user_background.id, :first_step_name)
  end

end

这将创建UserBackground对象,然后使用新创建的对象ID将用户传递到邪恶控制器的第一步。