사용자 컨트롤러에 update_status라는 사용자 정의 업데이트 기능을 구현하고 있습니다. 라우팅 관련 도움이 필요합니다. 내가하고 싶은 일은 관리자 만 액세스 할 수있는 상태를 업데이트하는 것입니다. 사용자 컨트롤러의 편집 기능을 통해 양식 도우미를 통해 업데이트 기능을 호출합니다. 이 양식 도우미에 대한 내 코드입니다 :레일 용 사용자 정의 업데이트 기능
<%= form_for @user, :url => url_for(:controller => "users", :action => "update_status"), method: :put do |f| %>
<%= render "shared/error_messages", object: f.object %>
<%= f.check_box :admin %>
<%= f.label :admin %>
<%= f.check_box :editor %>
<%= f.label :editor %>
<%= f.submit "Save Changes", class: "btn btn-primary" %>
<% end %>
하지만 내가 얻을 모든 사용자 ID가 될 수 있도록
내가 경로로 작업을하려면이 오류가 변경 사항을 저장 클릭 할 때 해결됨.
컨트롤러 액션 코드 :
def update_status
if @user.update_attributes(status_params)
flash[:success] = "User updated"
redirect_to @user
else
render 'edit'
end
end
경로 : 당신의 루트 파일에
Transpub::Application.routes.draw do
resources :users do
member do
put 'update_status'
end
end
resources :papers
resources :comments
resources :reviews
resources :sessions, only: [:new, :create, :destroy]
resources :relationships, only: [:create, :destroy]
resources :comments, only: [:create, :destroy]
resources :subject_field, only: [:create, :destroy]
#get "users/new"
root "static_pages#home"
match "/signup", to: "users#new", via: "get"
match "/signin", to: "sessions#new", via: "get"
match "/signout", to: "sessions#destroy", via: "delete"
match "/help", to: "static_pages#help", via: "get"
match "/about", to: "static_pages#about", via: "get"
match "/contact", to: "static_pages#contact", via: "get"
match "/search_papers", to: "papers#index", via: "get"
match "/browse_papers", to: "papers#browse", via: "get"
으로 변경하십시오. '컨트롤러'코드를 게시하십시오. – Pavan
routes.rb 파일에 정의 된 경로를 게시 할 수 있습니까? –