I have a pretty simple model called Deal with name and description where name is non-nullable.
When I post the following to /api/deals
{"name":"oaeu"}
I get the error
SQLite3::ConstraintException: deals.name may not be NULL: INSERT INTO "deals" ("created_at", "updated_at") VALUES (?, ?)
My Model
enter code here
My Controller
class DealsController < InheritedResources::Base
protected
def permitted_params
params.require(:deal).permit(:name)
end
end
My Model
class Deal < ActiveRecord::Base
end
I can't figure out what is going on!!!
My Gemfile includes:
gem 'rails', '4.0.2'
and
gem 'inherited_resources'
Any ideas?
Params
Firstly, your
strong params
are incorrect:As mentioned in this blog post, and this github post, you'll get errors unless use the above code!
Saving
As mentioned in the comments, it seems your save process is by-passing your inherited resources controller
It seems you're using an API, so perhaps that it sending straight to the model; either way, you'll have to detail how you're saving the inbound data