Home > Net >  Ruby on Rails Wrong Number of arguments (given 0 expected 1)
Ruby on Rails Wrong Number of arguments (given 0 expected 1)

Time:10-21

hello iam trying to create a new record using Ruby on Rails models however iam getting a wrong num her of arguments error.

error message:

enter image description here

config/routes.rb

Rails.application.routes.draw do

mount RailsAdmin::Engine => '/admin', as: 'rails_admin' devise_for :modifications devise_for :users resources :user_steps resources :divorce_steps resources :divorces

root 'nav_pages#home'
get '/home', to:'nav_pages#home'
get '/wwd', to:'nav_pages#wwd'
get '/about', to:'nav_pages#about'
get '/contact', to:'nav_pages#contact'
get '/blog', to:'nav_pages#blog'
get '/are_you_married', to: 'qualifier#are_you_married'
get '/want_a_divorce', to: 'qualifier#want_a_divorce'

end

divorces_controller.rb:

class DivorcesController < ApplicationController

def new @divorce = Divorce.new end

def create @divorce = Divorce.new(user_params) @divorce.save end

private

def user_params
  params.require.(:divorce).permit(:marriage_date, :seperation_date, :state_of_mariage, :child_support, :address, :childrens_address, :contact_with_other, :telephone)
end

end

new.html.erb

<div class = "container top-cont">
Great lets get started wiht some dates!

<%= form_with(model: @divorce, local: true) do |f| %>

  <%= f.label :marriage_date %>
  <%= f.text_field :marriage_date, class: 'form-control' %>
  
  <%= f.label :seperation_date %>
  <%= f.text_field :seperation_date, class: 'form-control' %>
  
  <%= f.label :state_of_marriage %>
  <%= f.text_field :state_of_marriage, class: 'form-control' %>
  
  <%= f.label :child_support%>
  <%= f.text_field :child_support, class: 'form-control' %>
  
  
<%= f.label :child_support %>
  <%= f.text_field :child_support, class: 'form-control' %>
  
      <%= f.label :address %>
  <%= f.text_field :address, class: 'form-control' %>
  
      <%= f.label :childrens_address %>
  <%= f.text_field :childrens_address, class: 'form-control' %>
  
<%= f.label :contact_with_other %>
  <%= f.text_field :contact_with_other, class: 'form-control' %>
  
      <%= f.label :telephone %>
  <%= f.text_field :telephone, class: 'form-control' %>
  
  <%= f.submit "Create my account", class: "btn btn-primary" %>
<% end %>

Any help is greatly appreciated thank you !

CodePudding user response:

The problem is in divorces_controller.rb

It should be params.require(:divorce), not params.require.(:divorce)

CodePudding user response:

Try with:

params.require(:divorce)

Actually strong parameters use the syntax:

params.require(:modal) 
  • Related