On Tuesday, 13 January 2015 11:22:14 UTC-5, Diego Dillenburg Bueno wrote:
>
> Further updates on my question above:
>
> what if I have a helper method to store the "current_patient", having 
> always the last patient from my search query and on my 
> hospitalizations_controller I build the Create method something like this: 
> @hospitalization = 
> current_patient.hospitalizations.new(hospitalization_params) ? Would this 
> be the best way to work around this?
>
>
This is a great use case for nested resource routing - you aren't just 
trying to make *a* hospitalization, you're trying to make one for a 
particular patient. So instead of a route like:

/hospitalizations/new

you'd want to use:

/patients/:patient_id/hospitalizations/new

One way to read this is "make a new hospitalization for the patient 
:patient_id".

To do this in the routes file, you'd have something like:

resources :patients do
  resources :hospitalizations
end

You can make a link to the new page with something like (in an ERB 
template):

link_to "New Hospitalization", new_patient_hospitalization_path(@patient)

assuming you've got the desired patient record in @patient.

--Matt Jones
 

>
> 2015-01-13 10:50 GMT-02:00 Diego Dillenburg Bueno <diegodi...@gmail.com 
> <javascript:>>:
>
>> Hey there,
>>
>> I have a patients model which has many hospitalizations, from the 
>> patients#show I want to generate a link to hospitalizations#new creating a 
>> new association to this very same patient, any ideas on how to do that? I 
>> want it to when I get to the hospitalizations#ne I be able to manipulate 
>> the output the patient data in the generated view and submit a 
>> Patient.hospitalizations.create, how would be the best approach for that?
>>
>> Thanks in advance,
>>
>> Diego Dillenburg Bueno
>> Graduando em Ciências da Computação
>> UNESP - Rio Claro
>> (12) 98116-7741
>> <https://www.facebook.com/diegodillenburg> 
>> <http://br.linkedin.com/in/diegodillenburg> 
>> <https://github.com/diegodillenburg>
>>
>>  
>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/3b5be9c1-6efc-4920-85d6-9a89c52a008f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to