2010-04-18 27 views
0

我有一個組織模型,has_many用戶通過從屬關係。爲has_many關係創建第二個表單頁面

而且,以組織形式(標準編輯),我使用semanting_form_for和semantic_fields_for來顯示組織字段和關聯字段。

但我希望創建一個單獨的表格來處理特定組織的關係。我試圖去組織控制器,然後創建一個edit_team和update_team方法,然後在路由上創建這些頁面,但是它變得一團糟,無法工作。

我在正確的軌道上嗎?

回答

1

是的,你應該建立在控制器edit_team和update_team方法,並將它們添加到routes.rb中

#organizations_controller 
def edit_team 
    @organization = Organization.find(params[:id]) 
    @team = @organization.affiliations 
end 

def update_team 
    # updating affiliations 
end 

#routes.rb 
map.resources :organizations, :member => { :edit_team => :get, :update_team => :put } 

,這就夠了。因此,顯示錯誤爲什麼它不起作用。

+0

我在提交表單時遇到問題。 我有此路線 update_team_organization PUT /organizations/:id/update_team(.:format){:控制器=> 「組織」,:動作=> 「update_team」} 而我的形式開始於: <%semantic_form_for update_team_organization_path do | f | %> 提交按鈕應調用組織控制器中的動作update_team,但出現此錯誤: (請參閱下面的註釋) – 2010-04-18 22:36:17

+0

ActionController :: UnknownAction(沒有任何操作響應爲1.操作:create,current_user,current_user_session,destroy ,編輯,edit_team,指數,LOGGED_IN?login_required,新,redirect_to_target_or_default,顯示,更新和update_team): 在瀏覽器的URL是: 的http://本地主機:3000 /機構/ 1/edit_team 所以他指的是ID而不是動作,應該是update_team。 – 2010-04-18 22:37:07

+0

解決了這個問題: <%semantic_form_for @organization,:url => {:action =>「update_team」} do | f | %> – 2010-04-18 23:17:16

相關問題