Mein Ziel ist es, eine neue Erinnerung Datensatz mit fest codierten Werte zu schaffen:Schienen: param.require (: Modell) Action :: ParameterMissing oder leer
In der folgenden Struktur:
Erinnerung belongs_to :deck
Deck has_one :reminder, dependent: :destroy
In Deck Controller komme ich zu der Ansicht wie folgt aus:
def repitition_alerts
@deck = Deck.find(params[:id])
@reminder = Reminder.new
end
Auf dieser Seite möchte ich eine neue Erinnerung mit einem link_to erstellen:
<%= link_to "make alerts", deck_reminders_path(@deck, @reminder, {:action => :create}, next_alert: 'soon', interval: false), :method => :post %>
Ich erhalte die folgende Fehlermeldung im Browser: ActionController::ParameterMissing in RemindersController#create
Vom Terminal-Ausgang:
ActionController::ParameterMissing (param is missing or the value is empty: reminder):
app/controllers/reminders_controller.rb:34:in `reminder_params'
app/controllers/reminders_controller.rb:19:in `create'
In die reminders_controller.rb habe ich:
def reminder_params
params.require(:reminder).permit(:deck_id, :interval, :next_alert, :alerts)
end
Wenn ich es richtig verstehe. Schienen sehen nicht das @Reminder hineingegangen? Aber es ist in der Seite. Ich kann dies auf die gleiche Seite setzen <%= @reminder %>
und ich sehe #<Reminder:0x007fc012fa00a8>
auf der Seite gerendert. Also existiert das Objekt selbst.