В настоящее время я пытаюсь реализовать мастер с wicked
в своем приложении rails.
Перенаправление после сохранения работает, но когда я пытаюсь обновить @product
через мой general.html.erb
вид, Я получаю следующую ошибку Couldn't find Product without an ID
У меня есть два отдельных контроллера для Prodouct
.
Мои маршруты:
resources :products
resources :product_steps
Контроллер продуктов
def create
@product = current_user.products.build(product_params)
if @product.save
redirect_to product_step_path(product_id: @product.id, id: :general)
# redirect_to is working
else
render :new
end
end
Контроллер ProductSteps
class ProductStepsController < ApplicationController
include Wicked::Wizard
before_action :set_product, only: [:show, :update]
steps :general, :categories, :pricing, :pictures
def show
# The first show action for :general is working
# The second show action for :categories isn't working
render_wizard
end
def update
@product.attributes = params[:product_id]
render_wizard @product
end
private
def set_product
@product = Product.friendly.find(params[:product_id])
end
end
Мой взгляд на :general
<%= form_for @product, url: wizard_path, method: :put do |f| %>
<%= f.text_field :title, class: "form-control" %>
<%= f.submit "Continue", class: "btn btn-primary btn-block" %>
<% end %>