Rails – 表现forms奇怪:不保存任何text_field

在Rails中 Matteo Alessani解决了我的问题后- 在表单中找不到ID ,我注意到我的表单没有保存我传递的字段。

我将在这里复制我从另一个问题得到的所有代码:

路线:

resources :honors 

模型:

 class Honor  'Person', :foreign_key => "person_id" belongs_to :honored, :class_name => 'Person', :foreign_key => "honored_id" belongs_to :group, :class_name => 'Group', :foreign_key => "group_id" 

控制器:

 def new @person = Person.find(params[:person]) @honored = Person.find(params[:honored]) @group = Group.find(params[:group_id]) @honor = Honor.new end def create @person = Person.find(current_person) @honor = Honor.save(:group_id => params[:honor][:group], :person_id => params[:honor][:person], :honored_id => params[:honor][:honored]) if @honor.valid? flash[:success] = "Honor created." redirect_to (:back) else redirect_to (:back) end end 

在视图中:

   @group.id, :person => current_person.id, :honored => agm.member.id) %> 

我的表格:

   @group.id %>  current_person.id %>  @honored.id %> 

错误是我可以从groupperson以及honored的ID中获取ID,但我在表单中输入的内容(我的属性是葡萄牙语,所以我不会翻译):

  INSERT INTO "honors" ("group_id", "person_id", "honor_id", "texto", "nota", "nivel_habilidade", "comprometimento", "tempo_demora", "criatividade", "organicazao", "comunicacao", "trabalho_grupo", "created_at", "updated_at") VALUES (39, 2, 44, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '2011-05-26 12:58:56.433510', '2011-05-26 12:58:56.433510') RETURNING "id". 

注意:日志中的参数包含值。

谢谢!

你在控制器中有错误

 def create @person = Person.find(current_person) @honor = Honor.new(params[:honor]) if @honor.save flash[:success] = "Honor created." redirect_to (:back) else redirect_to (:back) end end