0

我可以在帖子消息中看到所有正确的参数,但它们没有被保存到数据库中。这是控制器代码:

  def create
    @ask = current_user.asks.build(params[:ask])
    @ask.save
  end

def update
    @ask = current_user.asks.find_by_id(params[:id])
    next_step = @ask.check_change(params[:ask])
    if next_step == "ask2"
      @ask.update_attributes(params[:ask])
      ask2
      flash[:notice] = "Description added"
    elsif next_step == "ask3"
      @ask.update_attributes(params[:ask])
      ask3
      flash[:notice] = "Helper and public added"
    elsif next_step == "ask4"
      @ask.update_attributes(params[:ask])
      ask4
      flash[:notice] = "Category added"
    else
      @ask.update_attributes(params[:ask])
      flash[:notice] = "Not sure what to do"
    end

这是SQL:

Started POST "/asks" for 127.0.0.1 at 2012-11-16 12:39:22 -0500
Processing by AsksController#create as JS
  Parameters: {"utf8"=>"√", "authenticity_token"=>"n10gHRjvRpu4z40z+jDSTyOdNJrIm
NQdkPgNeS3XM14=", "ask"=>{"description"=>"new ask description is going here"}, "
commit"=>"Add a need"}
  ←[1m←[35mUser Load (0.0ms)←[0m  SELECT "users".* FROM "users" WHERE "users"."i
d" = ? LIMIT 1  [["id", 12]]
  ←[1m←[36m (0.0ms)←[0m  ←[1mbegin transaction←[0m
  ←[1m←[35mSQL (1.0ms)←[0m  INSERT INTO "asks" ("category", "created_at", "date_
done", "date_followed_up", "description", "done", "followed_up", "helper", "publ
ic", "updated_at", "user_id") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)  [["categ
ory", nil], ["created_at", Fri, 16 Nov 2012 17:39:22 UTC +00:00], ["date_done",
nil], ["date_followed_up", nil], ["description", nil], ["done", false], ["follow
ed_up", false], ["helper", nil], ["public", false], ["updated_at", Fri, 16 Nov 2
012 17:39:22 UTC +00:00], ["user_id", 12]]
  ←[1m←[36m (7.0ms)←[0m  ←[1mcommit transaction←[0m
  Rendered shared/_error_messages.html.erb (0.0ms)
  Rendered asks/_ask2.html.erb (5.0ms)
  Rendered layouts/_debug.html.erb (1.0ms)
  Rendered asks/create.js.erb (10.0ms)
Completed 200 OK in 38ms (Views: 25.0ms | ActiveRecord: 8.0ms)

我确定我在控制器中做错了什么,但我尝试了许多排列但无法弄清楚。

4

0 回答 0