Forum: Ruby on Rails Best way to call action new for a child entity?

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
Petros A. (Guest)
on 2007-05-04 15:17

I have two entities: Installation and Command. Each installation can
have many commands. In order to create a command the user has to go
through the installation. I have generated the standard scaffold code
for command and I changed the two actions New and Create in the
commands_controller as follows:

def new
  session[:installation_id] = params[:id] #I added this
  @command =

def create
  @command =[:command])
  @installation = Installation.find(session[:installation_id]) #I added
  @command.installation = @installation #I added this
    flash[:notice] = 'Command was successfully created.'
    redirect_to :action => 'list'
    render :action => 'new'

In the installation list view I have a link for each listed installation
that calls the command new action passing the installation id. In the
new command action I save this id in the session and when create is
called I retrieve the id and assign set the command to be relation with
that installation.

Is this a good practice? Is there another maybe more proper way of doing
what I did?

Thank you,
Petros (A Ruby on Rails newbie)
This topic is locked and can not be replied to.