I have an ActiveRecord and when i click on save all records are saved except the date.
My contorller
class UsersController < ApplicationController
def create
puts params[:user]
@user1 = User.new(params[:user])
if @user1.save
saveduser = User.where("fbid = ?",params[:user][:fbid])
unless saveduser.first.nil?
session[:user] = saveduser.first
end
puts "user saved "
redirect_to "/users/dashboard"
else
puts "error while saving user"
end
end
The view
<h3>User Details</h3>
<%= form_for(@user) do |f| %>
<table>
--some columns
<tr>
<td><%= f.label :state %></td>
<td> <%= f.text_field :state %></td>
</tr>
<tr>
<td><%= f.label :dob %></td>
<td> <%= f.text_field :dob %></td>
</tr>
<%= f.hidden_field :fbid %>
</table>
<%= f.submit %>
<% end %>
<table>
In console when create method is called in UserController . I can see
{"username"=>"xxxx.xx.94", "firstname"=>"xxxx", "lastname"=>"Raxxstogi", "emaild"=>"xx.xxx@gmail.com", "city"=>"Los Angeles", "country"=>"USA", "state"=>"CA", "dob"=>"08/13/1983", "fbid"=>"xxx"}
My DB table column is
dob | date | YES | | NULL |
Where is it going wrong?
Thanks
You are using a
text_fieldin your form to save into aDatetype field in the DB. Try instead to use the date helper methods as described here:http://guides.rubyonrails.org/form_helpers.html#using-date-and-time-form-helpers