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 %>
错误是我可以从group
和person
以及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