2012-03-02 100 views
0

型号:嵌套形式验证

Names - belongs_to People 
People - has_many names 

检视:

= form_for @people do |f| 
    .blkfr 
    = f.fields_for :names do |f_name| 
     = f_name.text_field :name 

控制器:

# People controller 
def update 
    #find people 
    if @people.update_attributes(params[:people]) 
    flash[:notice] = "Successfully updated people" 
    respond_with @people 
    else 
    flash[:alert] = "There was an error updating people" 
    respond_with @people 
    end 
end 

错误:

Template is missing 

Missing template people/edit, application/edit blah blah 

我没有用于编辑人员的模板。我目前打的路线是:

.../people/1/names 

我的问题是我怎么告诉轨跳回到了同样的观点(地名索引页),但返回的@people对象中的错误,而不会收到错误?

回答

1

如果您没有编辑模板,请指定要在控制器中呈现哪个模板。

:render => :index 
+0

这将呈现人员的索引,而不是名称索引。 – nbucciarelli 2012-03-02 17:17:02

+0

你可以渲染任何你的应用中的模板 :render =>'people/names/index' – AyJay 2012-03-02 17:20:58

+0

比你这么多! – nbucciarelli 2012-03-02 17:26:51