strong rails permit multiple ruby-on-rails parameters controller persistence

ruby on rails - permit - Parámetro persistente en el controlador Rails



strong parameters nested attributes (2)

¿hay alguna forma de persistir (preservar) los parámetros en el controlador Rails? Se debe pasar a cada acción, luego a cada vista y cada enlace.

Situación de ejemplo: Tengo la entidad A con su controlador. Además, tengo otra entidad B que depende de A. Necesito acceder a la entidad "madre" A con mucha frecuencia, así que me gustaría tenerla todavía como

http://some_url/b_controller/b_action?a_entity=xyz



Debería poder hacer todo desde su controlador, usando una combinación de before_filter y default_url_options :

class MyController < ApplicationController before_filter :set_a_entity def set_a_entity @a_entity = params[''a_entity''] # or @a_entity = Entity.find(params[''a_entity'']) end # Rails 3 def url_options {:a_entity => @a_entity}.merge(super) end # Rails 2 def default_url_options {:a_entity => @entity} end end

Esto no resuelve el problema de establecer el valor inicial de @a_entity , pero esto se puede hacer desde cualquier lugar (vista, controlador, etc.).

Si desea que se pase este parámetro en varios controladores, puede reemplazar MyController < ApplicationController con ApplicationController < ActionController::Base y debería funcionar también.

Espero que esto ayude.