Сохранить параметры с предыдущей страницы с помощью response_to - PullRequest
0 голосов
/ 12 февраля 2011

У меня есть модель Products, которая принадлежит_ модельному магазину (которая имеет_ множество продуктов).

Когда я создаю новый продукт для магазина, я использую этот URL:

/products/new?store_id=4

Когда создание продукта не проходит проверку, меня перенаправляют на:

/products

Вот ответная реакция для этого действия «создать»:

respond_to do |format|
  if @product.save        
    format.html { redirect_to(@product.store, :notice => 'Product was successfully created.') }
    format.xml  { render :xml => @product, :status => :created, :location => @product }
  else
    format.html { render :action => "new" }
    format.xml  { render :xml => @product.errors, :status => :unprocessable_entity }
  end
end

В идеале я хотел бы перенаправить пользователя при неудачном создании назад на точный URL-адрес, как и раньше, а именно:

/products/new?store_id=4

Спасибо

Harris

1 Ответ

0 голосов
/ 12 февраля 2011

Возможно, это поможет?

@store_id = params[:store_id]

respond_to do |format|
  if @product.save        
    format.html { redirect_to(@product.store, :notice => 'Product was successfully created.') }
    format.xml  { render :xml => @product, :status => :created, :location => @product }
  else
    format.html { render :action => "new", :store_id => @store_id }
    format.xml  { render :xml => @product.errors, :status => :unprocessable_entity }
  end
end

Вот откуда я черпаю вдохновение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...