2016-11-20 1 views
0

Ich habe für, wie man diesen Fehler param fehlt oder der Wert ist leer: Buchung. Alle meine Suche hat noch zu ergeben und zu beantworten. Von dem, was ich sagen kann, gibt das Buchungsobjekt Null zurück und ich weiß nicht, wie ich es beheben kann. Jede Hilfe wird sehr geschätzt.Schienen 4 Parameter fehlt oder der Wert ist leer: Buchung

Das Problem tritt in der Create-Aktion, wenn ich ein verschachteltes Formular einreichen.

ActionController::ParameterMissing in BookingsController#create 
param is missing or the value is empty: booking 


.row 
.col-md-6.col-md-offset-3 
    table.table 
     tr 
      th Flight Number 
      th Departure 
      th Destination 
      th Date 
      th Passengers 
     tbody 
      tr 
       td = @flight.id 
       td = @flight.from_airport.code 
       td = @flight.to_airport.code 
       td = @flight.date 
       td = @passengers 
    = form_for @booking do |f| 
     - @passengers.times do 
      = f.fields_for :passenger_num do |p| 
       = p.label :name 
       = p.text_field :name, class: 'form-control' 

       = p.label :email 
       = p.text_field :email, class: 'form-control' 

      = f.hidden_field :flight_id, value: params[:flight_id] 
      = f.hidden_field :passenger_num, value: params[:passenger_num] 
      = hidden_field_tag :flight_id, params[:flight_id] 
      = hidden_field_tag :passenger_num, params[:passenger_num] 

     = f.submit 'Finish', class: 'btn btn-primary btn-block' 
+0

versuchen 'Form_for: Buchung' –

+0

Das fehlgeschlagen, andere Ideen? – user3799793

Antwort

0

Ihre erstellen Aktion in der Steuerung wartet, dass params Struktur wie folgt sein:

{ booking: {flight_id: id, passenger_num: num, passengers_attributes: attrs }} 

Aber Sie senden, ohne "Buchung" Schlüssel in root.

+0

Wissen Sie, wie ich reparieren kann, ohne von meinen starken params zu fallen? – user3799793

Verwandte Themen