没有路由匹配[POST]“/ user_steps / profile”

时间:2015-02-26 21:20:07

标签: ruby-on-rails

尝试使用Wicked gem创建一个2步向导。 每一步都进入不同的模型。首先是用户模型,第二个是配置文件。用户有很多个人资料。

我能够成功完成第一步。个人'在哪里我要求他们添加他们的电子邮件。然而,当我尝试创建第二步时,我得到:

No route matches [POST] "/user_steps/profile"

我想要做的是创建一个current_user.profiles.new。

这是我的控制器代码:

class UserStepsController < ApplicationController
  include Wicked::Wizard
  steps :personal, :profile

    def show
      @user = current_user
      case step
      when :profile
        @profile = current_user.profiles.new
      end 
      render_wizard
    end

    def update
      @user = current_user
      case step
        when :personal
          @user.update_attributes(personal_params)
        when :profile
          @profile = current_user.profiles.new(profile_params)
          if @profile.save
            redirect_to root_url
          else
            redirect_to :back
          end
      end 
      render_wizard @user
    end

    private

    def personal_params
      params.require(:user).permit(:email)
    end

    def profile_params
      params.require(:profile).permit(:followers)
    end
end

个人资料表单很简单,如下所示:

<%= form_for @profile, url: wizard_path do |f| %>

  <%= f.text_field :followers %>

  <%= f.button %>
<% end %>

0 个答案:

没有答案