Hello All,
Several of my Rails apps on a server broke all at once. Specifically,
any forms that POST no longer work; NULL values are being submitted
instead of the form parameters. I''ve checked with Firebug that the
forms themselves are sending the values but the "create" action in all
my controllers does not seem to be picking up the form values. I was
hoping somebody could help me troubleshoot. These apps were all
working at some point but just broke all of a sudden. I''ve asked my
hosting provider if they changed anything but they claim no. Below
are my environment details as well as model, view, controller and
relevant development.log entries.
I appreciate any help!
#--guest_book.html.erb (view)
<% form_for(Comment.new) do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :name, ''Name:'' %><br />
<%= f.text_field :name, :class => ''required'' %>
</p>
<p>
<%= f.label :body, ''Message:'' %><br />
<%= f.text_area :body, :class => ''required'' %>
</p>
<p>
<%= f.submit "Submit" %>
</p>
<% end %>
#--comments_controller.rb (controller)
# GET /comments/new
# GET /comments/new.xml
def new
@comment = Comment.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @comment }
end
end
# POST /comments
# POST /comments.xml
def create
@comment = Comment.new(params[:comment])
@comment.approved = ''1''
@comment.ip_address = request.remote_ip
geo = GeoIP.new("#{RAILS_ROOT}/app/geoip/GeoLiteCity.dat")
g = geo.city(request.remote_ip)
@comment.city = g[7]
@comment.state = g[6]
@comment.country = g[4]
logger.debug "New comment: #{@comment.attributes.inspect}"
logger.debug "Comment should be valid: #{@comment.valid?}"
logger.debug "NEW FORM SUBMISSION: #{params.inspect}"
logger.debug "RAW POST: #{request.raw_post}"
respond_to do |format|
if @comment.save
flash[:notice] = "Thank you #{@comment.name} for signing our
Guest Book!"
#EmailNotifications.deliver_new_comment_added(@comment)
format.html { redirect_to(:back) }
format.xml { render :xml => @comment, :status
=> :created, :location => @comment }
else
format.html { render :action => "new" }
format.xml { render :xml => @comment.errors, :status
=> :unprocessable_entity }
end
end
end
#--comment.rb (Model)
class Comment < ActiveRecord::Base
end
#--development.log
Processing CommentsController#create (for 76.14.68.221 at 2009-10-28
14:42:53) [POST]
Parameters: {"comment"=>nil,
"commit"=>"Submit",
"authenticity_token"=>"CazFmdyMNnd3i+z0xH2GPgS7yumT0E/rZar0ofLSvSE="}
[4;36;1mComment Columns (6.6ms) [0m [0;1mSHOW FIELDS FROM
`comments` [0m
Comment crap
New comment: {"name"=>nil, "city"=>nil,
"created_at"=>nil,
"country"=>nil, "body"=>nil,
"updated_at"=>nil, "approved"=>nil,
"state"=>nil, "ip_address"=>nil}
Comment should be valid: true
NEW FORM SUBMISSION: {"comment"=>nil,
"commit"=>"Submit",
"authenticity_token"=>"CazFmdyMNnd3i+z0xH2GPgS7yumT0E/rZar0ofLSvSE=",
"action"=>"create",
"controller"=>"comments"}
RAW POST: authenticity_token=CazFmdyMNnd3i%2Bz0xH2GPgS7yumT0E
%2FrZar0ofLSvSE%3D&comment%5Bname%5D=Hey+Now+Name&comment%5Bbody%5D=Hey
+Now+Message&commit=Submit
[4;35;1mSQL (0.8ms) [0m [0mBEGIN [0m
[4;36;1mComment Create (1.1ms) [0m [0;1mINSERT INTO `comments`
(`name`, `city`, `created_at`, `body`, `country`, `updated_at`,
`approved`, `ip_address`, `state`) VALUES(NULL, ''San
Francisco'',
''2009-10-28 21:42:53'', NULL, ''United
States'', ''2009-10-28 21:42:53'',
1, ''76.14.68.221'', ''CA'') [0m
[4;35;1mSQL (50.4ms) [0m [0mCOMMIT [0m
Redirected to back
Redirected to http://www.example.com/guest-book
Completed in 71ms (DB: 62) | 302 Found [http://www.example.com/
comments]
[4;36;1mSQL (0.9ms) [0m [0;1mSET NAMES ''utf8'' [0m
[4;35;1mSQL (2.5ms) [0m [0mSET SQL_AUTO_IS_NULL=0 [0m
#--Environment
Phusion Passenger: 2.2.5
rails -v
Rails 2.3.0
ruby -v
ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux]
gem -v
1.3.5
gem list
actionmailer (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
actionpack (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
actionwebservice (1.2.6, 1.2.3)
activerecord (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
activeresource (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
activesupport (2.3.2, 2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
acts_as_taggable (2.0.2, 1.0.4)
ajax_scaffold_generator (3.1.11, 2.2.1)
archive-tar-minitar (0.5.2, 0.5.1)
auth_generator (2.0.1, 1.5.3)
Bloglines4R (0.1.0)
BlueCloth (1.0.0)
builder (2.1.2, 2.0.0)
camping (1.5)
capistrano (2.5.1, 2.1.0, 1.4.1)
classifier (1.3.1)
cmdparse (2.0.2, 2.0.0)
curb (0.1.4)
daemons (1.0.9)
facets (2.2.1, 1.8.54)
fastthread (1.0.1)
feedtools (0.2.29, 0.2.28)
ferret (0.11.6, 0.11.4)
flickr (1.0.2)
gd2 (1.1.1, 1.1)
gen (0.41.0)
geoip (0.8.1, 0.6.1)
geokit (1.4.1)
gettext (1.90.0)
glue (0.41.0)
gnuplot (2.2)
gravtastic (2.0.0)
gruff (0.3.1)
haml (2.0.3)
hoe (1.5.1)
hpricot (0.6)
htmltools (1.10)
localization_generator (1.0.8)
login_generator (1.2.2)
madeleine (0.7.3)
mechanize (0.7.6)
mini_magick (1.2.3)
mysql (2.7)
needle (1.3.0)
net-sftp (1.1.1)
net-ssh (1.1.2)
nitro (0.41.0)
og (0.41.0)
packet (0.1.14)
PageTemplate (2.2.0)
ParseTree (2.1.1)
payment (1.0.1)
pdf-writer (1.1.8)
podcast (0.0.4)
rack (1.0.0, 0.9.1)
radiant (0.6.9)
rails (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
rake (0.8.4, 0.8.3, 0.8.2)
RedCloth (3.0.4)
rfacebook (0.9.8)
rmagick (1.15.14)
rspec (1.1.3)
ruby-breakpoint (0.5.1)
ruby-debug (0.10.0)
ruby-yadis (0.3.4)
ruby_odeum (0.4.1)
rubyforge (0.4.5)
RubyInline (3.6.7)
rubyist-aasm (2.0.5)
rubypants (0.2.0)
rubyzip (0.9.1)
ruport (1.6.0)
ruport-util (0.14.0)
ruwiki (0.9.3)
salted_login_generator (2.0.2)
shipping (1.5.1)
SimpleSearch (0.5.0)
sqlite3-ruby (1.2.4, 1.2.1)
stemmer (1.0.1)
switchtower (1.0.1)
syntax (1.0.0)
tagtools (0.0.3)
tidy (1.1.2)
tzinfo (0.3.8)
unicode (0.1)
uuidtools (1.0.3)
webgen (0.4.7)
wee (0.10.0)
xhtmldiff (1.0.0)
xml-simple (1.0.11)
ym4r (0.6.1)
youtube-g (0.4.9.9)
You pasted the code for guest_book.html.erb , yet your controller is using new.html.erb. Confirm the code you pasted as guest_book.html.erb is actually for new, or paste the ''new'' view. On Oct 28, 4:00 pm, face7hill <face7h...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Hello All, > > Several of my Rails apps on a server broke all at once. Specifically, > any forms that POST no longer work; NULL values are being submitted > instead of the form parameters. I''ve checked with Firebug that the > forms themselves are sending the values but the "create" action in all > my controllers does not seem to be picking up the form values. I was > hoping somebody could help me troubleshoot. These apps were all > working at some point but just broke all of a sudden. I''ve asked my > hosting provider if they changed anything but they claim no. Below > are my environment details as well as model, view, controller and > relevant development.log entries. > > I appreciate any help! > > #--guest_book.html.erb (view) > <% form_for(Comment.new) do |f| %> > <%= f.error_messages %> > <p> > <%= f.label :name, ''Name:'' %><br /> > <%= f.text_field :name, :class => ''required'' %> > </p> > <p> > <%= f.label :body, ''Message:'' %><br /> > <%= f.text_area :body, :class => ''required'' %> > </p> > <p> > <%= f.submit "Submit" %> > </p> > <% end %> > > #--comments_controller.rb (controller) > # GET /comments/new > # GET /comments/new.xml > def new > @comment = Comment.new > > respond_to do |format| > format.html # new.html.erb > format.xml { render :xml => @comment } > end > end > > # POST /comments > # POST /comments.xml > def create > @comment = Comment.new(params[:comment]) > > @comment.approved = ''1'' > @comment.ip_address = request.remote_ip > > geo = GeoIP.new("#{RAILS_ROOT}/app/geoip/GeoLiteCity.dat") > g = geo.city(request.remote_ip) > @comment.city = g[7] > @comment.state = g[6] > @comment.country = g[4] > > logger.debug "New comment: #...@comment.attributes.inspect}" > logger.debug "Comment should be valid: #...@comment.valid?}" > logger.debug "NEW FORM SUBMISSION: #{params.inspect}" > logger.debug "RAW POST: #{request.raw_post}" > > respond_to do |format| > if @comment.save > flash[:notice] = "Thank you #...@comment.name} for signing our > Guest Book!" > #EmailNotifications.deliver_new_comment_added(@comment) > format.html { redirect_to(:back) } > format.xml { render :xml => @comment, :status > => :created, :location => @comment } > else > format.html { render :action => "new" } > format.xml { render :xml => @comment.errors, :status > => :unprocessable_entity } > end > end > end > > #--comment.rb (Model) > class Comment < ActiveRecord::Base > end > > #--development.log > Processing CommentsController#create (for 76.14.68.221 at 2009-10-28 > 14:42:53) [POST] > Parameters: {"comment"=>nil, "commit"=>"Submit", > "authenticity_token"=>"CazFmdyMNnd3i+z0xH2GPgS7yumT0E/rZar0ofLSvSE="} > [4;36;1mComment Columns (6.6ms) [0m [0;1mSHOW FIELDS FROM > `comments` [0m > Comment crap > New comment: {"name"=>nil, "city"=>nil, "created_at"=>nil, > "country"=>nil, "body"=>nil, "updated_at"=>nil, "approved"=>nil, > "state"=>nil, "ip_address"=>nil} > Comment should be valid: true > NEW FORM SUBMISSION: {"comment"=>nil, "commit"=>"Submit", > "authenticity_token"=>"CazFmdyMNnd3i+z0xH2GPgS7yumT0E/rZar0ofLSvSE=", > "action"=>"create", "controller"=>"comments"} > RAW POST: authenticity_token=CazFmdyMNnd3i%2Bz0xH2GPgS7yumT0E > %2FrZar0ofLSvSE%3D&comment%5Bname%5D=Hey+Now+Name&comment%5Bbody%5D=Hey > +Now+Message&commit=Submit > [4;35;1mSQL (0.8ms) [0m [0mBEGIN [0m > [4;36;1mComment Create (1.1ms) [0m [0;1mINSERT INTO `comments` > (`name`, `city`, `created_at`, `body`, `country`, `updated_at`, > `approved`, `ip_address`, `state`) VALUES(NULL, ''San Francisco'', > ''2009-10-28 21:42:53'', NULL, ''United States'', ''2009-10-28 21:42:53'', > 1, ''76.14.68.221'', ''CA'') [0m > [4;35;1mSQL (50.4ms) [0m [0mCOMMIT [0m > Redirected to back > Redirected tohttp://www.example.com/guest-book > Completed in 71ms (DB: 62) | 302 Found [http://www.example.com/ > comments] > [4;36;1mSQL (0.9ms) [0m [0;1mSET NAMES ''utf8'' [0m > [4;35;1mSQL (2.5ms) [0m [0mSET SQL_AUTO_IS_NULL=0 [0m > > #--Environment > Phusion Passenger: 2.2.5 > > rails -v > Rails 2.3.0 > > ruby -v > ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux] > > gem -v > 1.3.5 > > gem list > actionmailer (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > actionpack (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > actionwebservice (1.2.6, 1.2.3) > activerecord (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > activeresource (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > activesupport (2.3.2, 2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > acts_as_taggable (2.0.2, 1.0.4) > ajax_scaffold_generator (3.1.11, 2.2.1) > archive-tar-minitar (0.5.2, 0.5.1) > auth_generator (2.0.1, 1.5.3) > Bloglines4R (0.1.0) > BlueCloth (1.0.0) > builder (2.1.2, 2.0.0) > camping (1.5) > capistrano (2.5.1, 2.1.0, 1.4.1) > classifier (1.3.1) > cmdparse (2.0.2, 2.0.0) > curb (0.1.4) > daemons (1.0.9) > facets (2.2.1, 1.8.54) > fastthread (1.0.1) > feedtools (0.2.29, 0.2.28) > ferret (0.11.6, 0.11.4) > flickr (1.0.2) > gd2 (1.1.1, 1.1) > gen (0.41.0) > geoip (0.8.1, 0.6.1) > geokit (1.4.1) > gettext (1.90.0) > glue (0.41.0) > gnuplot (2.2) > gravtastic (2.0.0) > gruff (0.3.1) > haml (2.0.3) > hoe (1.5.1) > hpricot (0.6) > htmltools (1.10) > localization_generator (1.0.8) > login_generator (1.2.2) > madeleine (0.7.3) > mechanize (0.7.6) > mini_magick (1.2.3) > mysql (2.7) > needle (1.3.0) > net-sftp (1.1.1) > net-ssh (1.1.2) > nitro (0.41.0) > og (0.41.0) > packet (0.1.14) > PageTemplate (2.2.0) > ParseTree (2.1.1) > payment (1.0.1) > pdf-writer (1.1.8) > podcast (0.0.4) > rack (1.0.0, 0.9.1) > radiant (0.6.9) > rails (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > rake (0.8.4, 0.8.3, 0.8.2) > RedCloth (3.0.4) > rfacebook (0.9.8) > rmagick (1.15.14) > rspec (1.1.3) > ruby-breakpoint (0.5.1) > ruby-debug (0.10.0) > ruby-yadis (0.3.4) > ruby_odeum (0.4.1) > rubyforge (0.4.5) > RubyInline (3.6.7) > rubyist-aasm (2.0.5) > rubypants (0.2.0) > rubyzip (0.9.1) > ruport (1.6.0) > ruport-util (0.14.0) > ruwiki (0.9.3) > salted_login_generator (2.0.2) > shipping (1.5.1) > SimpleSearch (0.5.0) > sqlite3-ruby (1.2.4, 1.2.1) > stemmer (1.0.1) > switchtower (1.0.1) > syntax (1.0.0) > tagtools (0.0.3) > tidy (1.1.2) > tzinfo (0.3.8) > unicode (0.1) > uuidtools (1.0.3) > webgen (0.4.7) > wee (0.10.0) > xhtmldiff (1.0.0) > xml-simple (1.0.11) > ym4r (0.6.1) > youtube-g (0.4.9.9)
Hi smeade, I embedded the comment form on the guestbook view. Comments are just guestbook entries. So, to confirm, guest_book.html.erb has a comment form that uses the comments_controller.rb, i.e. I did not mis-paste the code. The "create" action is where things appear to break. Any other thoughts? I really appreciate your help. On Oct 28, 6:00 pm, smeade <scott.b.me...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> You pasted the code for guest_book.html.erb , yet your controller is > using new.html.erb. Confirm the code you pasted as > guest_book.html.erb is actually for new, or paste the ''new'' view. > > On Oct 28, 4:00 pm, face7hill <face7h...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > > > Hello All, > > > Several of my Rails apps on a server broke all at once. Specifically, > > any forms that POST no longer work; NULL values are being submitted > > instead of the form parameters. I''ve checked with Firebug that the > > forms themselves are sending the values but the "create" action in all > > my controllers does not seem to be picking up the form values. I was > > hoping somebody could help me troubleshoot. These apps were all > > working at some point but just broke all of a sudden. I''ve asked my > > hosting provider if they changed anything but they claim no. Below > > are my environment details as well as model, view, controller and > > relevant development.log entries. > > > I appreciate any help! > > > #--guest_book.html.erb (view) > > <% form_for(Comment.new) do |f| %> > > <%= f.error_messages %> > > <p> > > <%= f.label :name, ''Name:'' %><br /> > > <%= f.text_field :name, :class => ''required'' %> > > </p> > > <p> > > <%= f.label :body, ''Message:'' %><br /> > > <%= f.text_area :body, :class => ''required'' %> > > </p> > > <p> > > <%= f.submit "Submit" %> > > </p> > > <% end %> > > > #--comments_controller.rb (controller) > > # GET /comments/new > > # GET /comments/new.xml > > def new > > @comment = Comment.new > > > respond_to do |format| > > format.html # new.html.erb > > format.xml { render :xml => @comment } > > end > > end > > > # POST /comments > > # POST /comments.xml > > def create > > @comment = Comment.new(params[:comment]) > > > @comment.approved = ''1'' > > @comment.ip_address = request.remote_ip > > > geo = GeoIP.new("#{RAILS_ROOT}/app/geoip/GeoLiteCity.dat") > > g = geo.city(request.remote_ip) > > @comment.city = g[7] > > @comment.state = g[6] > > @comment.country = g[4] > > > logger.debug "New comment: #...@comment.attributes.inspect}" > > logger.debug "Comment should be valid: #...@comment.valid?}" > > logger.debug "NEW FORM SUBMISSION: #{params.inspect}" > > logger.debug "RAW POST: #{request.raw_post}" > > > respond_to do |format| > > if @comment.save > > flash[:notice] = "Thank you #...@comment.name} for signing our > > Guest Book!" > > #EmailNotifications.deliver_new_comment_added(@comment) > > format.html { redirect_to(:back) } > > format.xml { render :xml => @comment, :status > > => :created, :location => @comment } > > else > > format.html { render :action => "new" } > > format.xml { render :xml => @comment.errors, :status > > => :unprocessable_entity } > > end > > end > > end > > > #--comment.rb (Model) > > class Comment < ActiveRecord::Base > > end > > > #--development.log > > Processing CommentsController#create (for 76.14.68.221 at 2009-10-28 > > 14:42:53) [POST] > > Parameters: {"comment"=>nil, "commit"=>"Submit", > > "authenticity_token"=>"CazFmdyMNnd3i+z0xH2GPgS7yumT0E/rZar0ofLSvSE="} > > [4;36;1mComment Columns (6.6ms) [0m [0;1mSHOW FIELDS FROM > > `comments` [0m > > Comment crap > > New comment: {"name"=>nil, "city"=>nil, "created_at"=>nil, > > "country"=>nil, "body"=>nil, "updated_at"=>nil, "approved"=>nil, > > "state"=>nil, "ip_address"=>nil} > > Comment should be valid: true > > NEW FORM SUBMISSION: {"comment"=>nil, "commit"=>"Submit", > > "authenticity_token"=>"CazFmdyMNnd3i+z0xH2GPgS7yumT0E/rZar0ofLSvSE=", > > "action"=>"create", "controller"=>"comments"} > > RAW POST: authenticity_token=CazFmdyMNnd3i%2Bz0xH2GPgS7yumT0E > > %2FrZar0ofLSvSE%3D&comment%5Bname%5D=Hey+Now+Name&comment%5Bbody%5D=Hey > > +Now+Message&commit=Submit > > [4;35;1mSQL (0.8ms) [0m [0mBEGIN [0m > > [4;36;1mComment Create (1.1ms) [0m [0;1mINSERT INTO `comments` > > (`name`, `city`, `created_at`, `body`, `country`, `updated_at`, > > `approved`, `ip_address`, `state`) VALUES(NULL, ''San Francisco'', > > ''2009-10-28 21:42:53'', NULL, ''United States'', ''2009-10-28 21:42:53'', > > 1, ''76.14.68.221'', ''CA'') [0m > > [4;35;1mSQL (50.4ms) [0m [0mCOMMIT [0m > > Redirected to back > > Redirected tohttp://www.example.com/guest-book > > Completed in 71ms (DB: 62) | 302 Found [http://www.example.com/ > > comments] > > [4;36;1mSQL (0.9ms) [0m [0;1mSET NAMES ''utf8'' [0m > > [4;35;1mSQL (2.5ms) [0m [0mSET SQL_AUTO_IS_NULL=0 [0m > > > #--Environment > > Phusion Passenger: 2.2.5 > > > rails -v > > Rails 2.3.0 > > > ruby -v > > ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux] > > > gem -v > > 1.3.5 > > > gem list > > actionmailer (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > actionpack (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > actionwebservice (1.2.6, 1.2.3) > > activerecord (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > activeresource (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > activesupport (2.3.2, 2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > acts_as_taggable (2.0.2, 1.0.4) > > ajax_scaffold_generator (3.1.11, 2.2.1) > > archive-tar-minitar (0.5.2, 0.5.1) > > auth_generator (2.0.1, 1.5.3) > > Bloglines4R (0.1.0) > > BlueCloth (1.0.0) > > builder (2.1.2, 2.0.0) > > camping (1.5) > > capistrano (2.5.1, 2.1.0, 1.4.1) > > classifier (1.3.1) > > cmdparse (2.0.2, 2.0.0) > > curb (0.1.4) > > daemons (1.0.9) > > facets (2.2.1, 1.8.54) > > fastthread (1.0.1) > > feedtools (0.2.29, 0.2.28) > > ferret (0.11.6, 0.11.4) > > flickr (1.0.2) > > gd2 (1.1.1, 1.1) > > gen (0.41.0) > > geoip (0.8.1, 0.6.1) > > geokit (1.4.1) > > gettext (1.90.0) > > glue (0.41.0) > > gnuplot (2.2) > > gravtastic (2.0.0) > > gruff (0.3.1) > > haml (2.0.3) > > hoe (1.5.1) > > hpricot (0.6) > > htmltools (1.10) > > localization_generator (1.0.8) > > login_generator (1.2.2) > > madeleine (0.7.3) > > mechanize (0.7.6) > > mini_magick (1.2.3) > > mysql (2.7) > > needle (1.3.0) > > net-sftp (1.1.1) > > net-ssh (1.1.2) > > nitro (0.41.0) > > og (0.41.0) > > packet (0.1.14) > > PageTemplate (2.2.0) > > ParseTree (2.1.1) > > payment (1.0.1) > > pdf-writer (1.1.8) > > podcast (0.0.4) > > rack (1.0.0, 0.9.1) > > radiant (0.6.9) > > rails (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > rake (0.8.4, 0.8.3, 0.8.2) > > RedCloth (3.0.4) > > rfacebook (0.9.8) > > rmagick (1.15.14) > > rspec (1.1.3) > > ruby-breakpoint (0.5.1) > > ruby-debug (0.10.0) > > ruby-yadis (0.3.4) > > ruby_odeum (0.4.1) > > rubyforge (0.4.5) > > RubyInline (3.6.7) > > rubyist-aasm (2.0.5) > > rubypants (0.2.0) > > rubyzip (0.9.1) > > ruport (1.6.0) > > ruport-util (0.14.0) > > ruwiki (0.9.3) > > salted_login_generator (2.0.2) > > shipping (1.5.1) > > SimpleSearch (0.5.0) > > sqlite3-ruby (1.2.4, 1.2.1) > > stemmer (1.0.1) > > switchtower (1.0.1) > > syntax (1.0.0) > > tagtools (0.0.3) > > tidy (1.1.2) > > tzinfo (0.3.8) > > unicode (0.1) > > uuidtools (1.0.3) > > webgen (0.4.7) > > wee (0.10.0) > > xhtmldiff (1.0.0) > > xml-simple (1.0.11) > > ym4r (0.6.1) > > youtube-g (0.4.9.9)
Hello All, If anybody else is having this problem, this is how I solved it. I simply upgraded my Rails installation from 2.3.0 to 2.3.4 and reinstalled my gems. That seemed to take care of it for some reason. I also did the following during debugging: 1. I copied the code from production to my local environment (running 2.3.4) and connecting to the remote database, everything worked fine 2. I disabled FastCGI on production (I''m not sure if that helped) 3. I found out that my host (Dreamhost) upgraded Phusion Passenger from 2.0.6 to 2.2.5 around the time that things broke It appears that this was an environment issue since things were fine until the Passenger upgrade. Here are some other links that I found that were similar to my problem: http://railsforum.com/viewtopic.php?id=3186 http://pivotallabs.com/users/amilligan/blog/articles/979-rails-requests-missing-the-http-body I hope this is helpful to anybody else who was facing a similar problem. On Oct 28, 6:19 pm, face7hill <face7h...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Hi smeade, > > I embedded the comment form on the guestbook view. Comments are just > guestbook entries. So, to confirm, guest_book.html.erb has a comment > form that uses the comments_controller.rb, i.e. I did not mis-paste > the code. The "create" action is where things appear to break. > > Any other thoughts? I really appreciate your help. > > On Oct 28, 6:00 pm, smeade <scott.b.me...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > > > You pasted the code for guest_book.html.erb , yet your controller is > > using new.html.erb. Confirm the code you pasted as > > guest_book.html.erb is actually for new, or paste the ''new'' view. > > > On Oct 28, 4:00 pm, face7hill <face7h...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > > Hello All, > > > > Several of my Rails apps on a server broke all at once. Specifically, > > > any forms that POST no longer work; NULL values are being submitted > > > instead of the form parameters. I''ve checked with Firebug that the > > > forms themselves are sending the values but the "create" action in all > > > my controllers does not seem to be picking up the form values. I was > > > hoping somebody could help me troubleshoot. These apps were all > > > working at some point but just broke all of a sudden. I''ve asked my > > > hosting provider if they changed anything but they claim no. Below > > > are my environment details as well as model, view, controller and > > > relevant development.log entries. > > > > I appreciate any help! > > > > #--guest_book.html.erb (view) > > > <% form_for(Comment.new) do |f| %> > > > <%= f.error_messages %> > > > <p> > > > <%= f.label :name, ''Name:'' %><br /> > > > <%= f.text_field :name, :class => ''required'' %> > > > </p> > > > <p> > > > <%= f.label :body, ''Message:'' %><br /> > > > <%= f.text_area :body, :class => ''required'' %> > > > </p> > > > <p> > > > <%= f.submit "Submit" %> > > > </p> > > > <% end %> > > > > #--comments_controller.rb (controller) > > > # GET /comments/new > > > # GET /comments/new.xml > > > def new > > > @comment = Comment.new > > > > respond_to do |format| > > > format.html # new.html.erb > > > format.xml { render :xml => @comment } > > > end > > > end > > > > # POST /comments > > > # POST /comments.xml > > > def create > > > @comment = Comment.new(params[:comment]) > > > > @comment.approved = ''1'' > > > @comment.ip_address = request.remote_ip > > > > geo = GeoIP.new("#{RAILS_ROOT}/app/geoip/GeoLiteCity.dat") > > > g = geo.city(request.remote_ip) > > > @comment.city = g[7] > > > @comment.state = g[6] > > > @comment.country = g[4] > > > > logger.debug "New comment: #...@comment.attributes.inspect}" > > > logger.debug "Comment should be valid: #...@comment.valid?}" > > > logger.debug "NEW FORM SUBMISSION: #{params.inspect}" > > > logger.debug "RAW POST: #{request.raw_post}" > > > > respond_to do |format| > > > if @comment.save > > > flash[:notice] = "Thank you #...@comment.name} for signing our > > > Guest Book!" > > > #EmailNotifications.deliver_new_comment_added(@comment) > > > format.html { redirect_to(:back) } > > > format.xml { render :xml => @comment, :status > > > => :created, :location => @comment } > > > else > > > format.html { render :action => "new" } > > > format.xml { render :xml => @comment.errors, :status > > > => :unprocessable_entity } > > > end > > > end > > > end > > > > #--comment.rb (Model) > > > class Comment < ActiveRecord::Base > > > end > > > > #--development.log > > > Processing CommentsController#create (for 76.14.68.221 at 2009-10-28 > > > 14:42:53) [POST] > > > Parameters: {"comment"=>nil, "commit"=>"Submit", > > > "authenticity_token"=>"CazFmdyMNnd3i+z0xH2GPgS7yumT0E/rZar0ofLSvSE="} > > > [4;36;1mComment Columns (6.6ms) [0m [0;1mSHOW FIELDS FROM > > > `comments` [0m > > > Comment crap > > > New comment: {"name"=>nil, "city"=>nil, "created_at"=>nil, > > > "country"=>nil, "body"=>nil, "updated_at"=>nil, "approved"=>nil, > > > "state"=>nil, "ip_address"=>nil} > > > Comment should be valid: true > > > NEW FORM SUBMISSION: {"comment"=>nil, "commit"=>"Submit", > > > "authenticity_token"=>"CazFmdyMNnd3i+z0xH2GPgS7yumT0E/rZar0ofLSvSE=", > > > "action"=>"create", "controller"=>"comments"} > > > RAW POST: authenticity_token=CazFmdyMNnd3i%2Bz0xH2GPgS7yumT0E > > > %2FrZar0ofLSvSE%3D&comment%5Bname%5D=Hey+Now+Name&comment%5Bbody%5D=Hey > > > +Now+Message&commit=Submit > > > [4;35;1mSQL (0.8ms) [0m [0mBEGIN [0m > > > [4;36;1mComment Create (1.1ms) [0m [0;1mINSERT INTO `comments` > > > (`name`, `city`, `created_at`, `body`, `country`, `updated_at`, > > > `approved`, `ip_address`, `state`) VALUES(NULL, ''San Francisco'', > > > ''2009-10-28 21:42:53'', NULL, ''United States'', ''2009-10-28 21:42:53'', > > > 1, ''76.14.68.221'', ''CA'') [0m > > > [4;35;1mSQL (50.4ms) [0m [0mCOMMIT [0m > > > Redirected to back > > > Redirected tohttp://www.example.com/guest-book > > > Completed in 71ms (DB: 62) | 302 Found [http://www.example.com/ > > > comments] > > > [4;36;1mSQL (0.9ms) [0m [0;1mSET NAMES ''utf8'' [0m > > > [4;35;1mSQL (2.5ms) [0m [0mSET SQL_AUTO_IS_NULL=0 [0m > > > > #--Environment > > > Phusion Passenger: 2.2.5 > > > > rails -v > > > Rails 2.3.0 > > > > ruby -v > > > ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux] > > > > gem -v > > > 1.3.5 > > > > gem list > > > actionmailer (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > > actionpack (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > > actionwebservice (1.2.6, 1.2.3) > > > activerecord (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > > activeresource (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > > activesupport (2.3.2, 2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > > acts_as_taggable (2.0.2, 1.0.4) > > > ajax_scaffold_generator (3.1.11, 2.2.1) > > > archive-tar-minitar (0.5.2, 0.5.1) > > > auth_generator (2.0.1, 1.5.3) > > > Bloglines4R (0.1.0) > > > BlueCloth (1.0.0) > > > builder (2.1.2, 2.0.0) > > > camping (1.5) > > > capistrano (2.5.1, 2.1.0, 1.4.1) > > > classifier (1.3.1) > > > cmdparse (2.0.2, 2.0.0) > > > curb (0.1.4) > > > daemons (1.0.9) > > > facets (2.2.1, 1.8.54) > > > fastthread (1.0.1) > > > feedtools (0.2.29, 0.2.28) > > > ferret (0.11.6, 0.11.4) > > > flickr (1.0.2) > > > gd2 (1.1.1, 1.1) > > > gen (0.41.0) > > > geoip (0.8.1, 0.6.1) > > > geokit (1.4.1) > > > gettext (1.90.0) > > > glue (0.41.0) > > > gnuplot (2.2) > > > gravtastic (2.0.0) > > > gruff (0.3.1) > > > haml (2.0.3) > > > hoe (1.5.1) > > > hpricot (0.6) > > > htmltools (1.10) > > > localization_generator (1.0.8) > > > login_generator (1.2.2) > > > madeleine (0.7.3) > > > mechanize (0.7.6) > > > mini_magick (1.2.3) > > > mysql (2.7) > > > needle (1.3.0) > > > net-sftp (1.1.1) > > > net-ssh (1.1.2) > > > nitro (0.41.0) > > > og (0.41.0) > > > packet (0.1.14) > > > PageTemplate (2.2.0) > > > ParseTree (2.1.1) > > > payment (1.0.1) > > > pdf-writer (1.1.8) > > > podcast (0.0.4) > > > rack (1.0.0, 0.9.1) > > > radiant (0.6.9) > > > rails (2.3.0, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2) > > > rake (0.8.4, 0.8.3, 0.8.2) > > > RedCloth (3.0.4) > > > rfacebook (0.9.8) > > > rmagick (1.15.14) > > > rspec (1.1.3) > > > ruby-breakpoint (0.5.1) > > > ruby-debug (0.10.0) > > > ruby-yadis (0.3.4) > > > ruby_odeum (0.4.1) > > > rubyforge (0.4.5) > > > RubyInline (3.6.7) > > > rubyist-aasm (2.0.5) > > > rubypants (0.2.0) > > > rubyzip (0.9.1) > > > ruport (1.6.0) > > > ruport-util (0.14.0) > > > ruwiki (0.9.3) > > > salted_login_generator (2.0.2) > > > shipping (1.5.1) > > > SimpleSearch (0.5.0) > > > sqlite3-ruby (1.2.4, 1.2.1) > > > stemmer (1.0.1) > > > switchtower (1.0.1) > > > syntax (1.0.0) > > > tagtools (0.0.3) > > > tidy (1.1.2) > > > tzinfo (0.3.8) > > > unicode (0.1) > > > uuidtools (1.0.3) > > > webgen (0.4.7) > > > wee (0.10.0) > > > xhtmldiff (1.0.0) > > > xml-simple (1.0.11) > > > ym4r (0.6.1) > > > youtube-g (0.4.9.9)