깊은 루트를 정리하고 큰 입력 덕분에 얕은 루트로 대체했습니다. 나는 커스텀 메쏘드를 작동시키고 무언가에 점들을 연결하지 못하게하려고 노력하고있다. 내 routes.rb는이 라인을 가지고 그것을 완료 '완전한/ID 이벤트 /'이벤트에 이벤트를하고 처리를 게시 할중첩 된 얕은 리소스의 메소드에 대한 레일 경로
resources :members, shallow: true do
resources :events, shallow: true do
get 'complete' => 'events#complete'
resources :items
end
end
내 목표는 를 호출 할 수있다. 위의 경로는이 다음 경로를 추가합니다
event_event_complete GET /events/:event_id/complete(.:format) events#complete
member_events GET /members/:member_id/events(.:format) events#index
POST /members/:member_id/events(.:format) events#create
new_member_event GET /members/:member_id/events/new(.:format) events#new
edit_event GET /events/:id/edit(.:format) events#edit
event GET /events/:id(.:format) events#show
PATCH /events/:id(.:format) events#update
PUT /events/:id(.:format) events#update
DELETE /events/:id(.:format) events#destroy
현재의 컨트롤러 액션 : 내가 잘못에 넣어 것 같은
def complete
@event = Event.find(params[:id])
end
이 보인다 : 나는 그것이 있어야 생각하는 방법
def complete
@event = Event.find(params[:event_id])
end
event를 다음과 같이 전달하기 때문에 무언가를 배치하거나 놓치기 : id 대신 : event_id. 모든 것이 작동하지만 이것은 더 어리석은 것처럼 보일 것입니다. 그래서 나는 바보 같은 일을하고 있다고 확신합니다.
미리 도움을 청하십시오! 아래
마크
이 작업을 수행. 다시 한 번 고맙습니다. 도움을 주셔서 감사합니다. – MechDog
다시 도와 줘서 기뻐 :) –