0

I Refinanzierungen einen link_to auf IndexWie Ansicht 'Show' genannt, wenn id in einer anderen Steuerung ist

<%= link_to "View details", refinancing_path(@refinancing) %> 

Diese refinancing_path (@refinancing) ist Refinanzierungen/6 zum Beispiel

Mein Weg ist einfach:

resources :refinancings, except: :destroy 

Und mein Controller ist:

def show 
    @refinancing = Refinancing.find(params[:id]) 
    # THIS GET REFINANCING THROUGH HISTORIC REFINANCING 
    @hist_refin = HistoricRefinancing.consult_historic_refinancing(params[:refinancing_id]) 
    end 

Dieses Modell der historischen Umfinanzierung

class HistoricRefinancing < ActiveRecord::Base 
    belongs_to :authorization 
    has_many :refinancings 

    scope :consult_historic_refinancing, -> (refinancing_id) { HistoricRefinancing.where("refinancing_id = ? ", "#{refinancing_id}") } 

Alles was ich brauche ist, dass meine Meinung nach Index, wenn Klick auf link_to Detail zeigt für diese Genehmigung der Refinanzierung. Ich erhalte diesen Fehler auf Klick:

No route matches {:action=>"show", :controller=>"refinancings", :id=>nil} missing required keys: [:id] 

Sicher, es nicht id ist, aber wie diese bekommen? Bitte hilf mir!

UPDATE ######################################

Meine View zeigen ist ....

<h3>Details of refinancing</h3> 

<p> 
    <strong>Name:</strong> 
    <%= @refinancing.employee.person.name %> 
</p> 

<p> 
    <strong>Period:</strong> 
    <%= @refinancing.period.strftime("%m/%Y") %> 
</p> 

<p> 
    <strong>Value</strong> 
    <%= number_to_currency @refinancing.value %> 
</p> 

Gerade diese ...

+0

Können Sie mit Ihrer Sicht im Detail aktualisieren? Es gibt einen Fehler in der Definition der Ansicht! –

+0

OK, ich werde updaten –

+0

Klingt, als könnten Sie versuchen, auf ein ungespeichertes Objekt zu verlinken (die haben keine ID) –

Antwort

1

Als Ihr Kommentar sollte die Logik sein:

<% authotization.historic_refinancing.refinancings.each do |refinancing| %> 
    <%= link_to "View details", refinancing_path(refinancing) %> 
<% end %> 
+0

Sorry Mann, mein Code ist in Portugiesisch, so übersetze ich es und schreibe hier vergesse ich das ... aber meine Routen sind Refinanzierungen und RefinancingsController, der Fehler ist anders = ( –

+0

Ich sehe, so der Schlüssel ist: @Refinancierung kann nil sein. Versuchen Sie es zu überprüfen? –

+0

Ja, ist nil ... aber Ich habe ID –