필수 키 누락 : 중첩 된 요소를 업데이트 할 때 [: id]

Charlie Bregnballe

우선 저를 도와 주셔서 감사합니다.

나는 프로젝트 도구에서 일하고 있는데 거기에서 프로젝트 모델이 많이 있습니다. project_tasks는 프로젝트에 속합니다.

프로젝트 작업에 대한 완료 작업으로 표시하려고하는데 패치 작업에서 project_task ID를 가져올 수없는 것 같습니다.

내 경로는 다음과 같습니다. (나도 프로젝트에 대한 완전한 조치가 있지만 잘 작동합니다)

resources :projects do
    resources :project_tasks do
      member do
        patch :complete
      end
    end
    member do
      patch :complete
    end
  end

레이크 루트

complete_project_project_task PATCH  /projects/:project_id/project_tasks/:id/complete(.:format) project_tasks#complete
        project_project_tasks GET    /projects/:project_id/project_tasks(.:format)              project_tasks#index
                              POST   /projects/:project_id/project_tasks(.:format)              project_tasks#create
     new_project_project_task GET    /projects/:project_id/project_tasks/new(.:format)          project_tasks#new
    edit_project_project_task GET    /projects/:project_id/project_tasks/:id/edit(.:format)     project_tasks#edit
         project_project_task GET    /projects/:project_id/project_tasks/:id(.:format)          project_tasks#show
                              PATCH  /projects/:project_id/project_tasks/:id(.:format)          project_tasks#update
                              PUT    /projects/:project_id/project_tasks/:id(.:format)          project_tasks#update
                              DELETE /projects/:project_id/project_tasks/:id(.:format)          project_tasks#destroy
             complete_project PATCH  /projects/:id/complete(.:format)                           projects#complete
                     projects GET    /projects(.:format)                                        projects#index
                              POST   /projects(.:format)                                        projects#create
                  new_project GET    /projects/new(.:format)                                    projects#new
                 edit_project GET    /projects/:id/edit(.:format)                               projects#edit
                      project GET    /projects/:id(.:format)                                    projects#show
                              PATCH  /projects/:id(.:format)                                    projects#update
                              PUT    /projects/:id(.:format)                                    projects#update
                              DELETE /projects/:id(.:format)                                    projects#destroy

보기:

<%= link_to '', complete_project_project_task_path(@project, project_task.id), class: "glyphicon glyphicon-ok", id: "complete-#{project_task.id}", method: :patch %>

그리고 컨트롤러 액션 :

def complete
    @project = Project.find(params[:project_id])
    @project_task = project.project_task.find(params[:id])
    if @project_task.completed_at.blank?
      @project_task.update_attribute(:completed_at, Time.now)
      flash[:success] = 'Task Completed!'
      redirect_to root_path
    else
      @project_task.update_attribute(:completed_at, '')
      flash[:info] = 'Task Updated!'
      redirect_to root_path
    end
  end

내가 받고있는 오류는 다음과 같습니다. {: action => "complete", : controller => "project_tasks", : id => nil, : project_id => "26"} 누락 된 필수 키와 일치하는 경로 없음 : [: id]

link_to에서 2 개의 인수, @project (프로젝트 ID를 얻기 위해) 및 project_task.id를 추가합니다. 프로젝트 ID가 정확하지만 project_task.id가 아닌 것 같습니다. 컨트롤러 작업을 @project_task = ProjectTask.find (params [: id])로 변경하려고했지만 운이 없었습니다. (나는 또한 link_to에서 다른 인수로 몇 가지를 시도했습니다.) 나는 그것을 검색하는 방법을 잘 모르겠지만, 당신 중 한 명이 나를 올바른 방향으로 안내 할 수 있기를 바랍니다.

미리 감사드립니다!

Charlie Bregnballe

좋아요, 문제가 뭔지 알아 냈어요.
충돌을 일으킨 @project_task 인스턴스의 두 가지 버전이 있습니다. (양식과 완전한 행동 모두에서) 그래서 나는 추가했습니다

<% @project.project_tasks.select(&:persisted?).each do |project_task| %>

그리고 수정 사항은 & : persisted? 저장된 개체 만 표시합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

중첩 된 주석에서 누락 된 필수 키 : [: post_id]를 찾는 방법은 무엇입니까?

분류에서Dev

누락 된 키 값 쌍으로 중첩 된 사전 업데이트

분류에서Dev

중첩 된 메서드를 통해 TPL을 사용할 때 UI 요소를 업데이트 할 수 없습니다.

분류에서Dev

중첩 된 직렬 변환기를 ID로 업데이트 할 수없는 이유는 무엇입니까?

분류에서Dev

15.04로 업데이트 할 때 누락 된 종속성

분류에서Dev

15.04로 업데이트 할 때 누락 된 종속성

분류에서Dev

Kotlin에서지도를 처리 할 때 누락 된 키를 어떻게 알 수 있나요?

분류에서Dev

TraMineR의 seqpcplot () 함수를 사용할 때 누락 된 데이터 상태 '%'제거

분류에서Dev

Code First를 사용할 때 관계 테이블에 누락 된 필드

분류에서Dev

Rails에서 단일 속성 만 업데이트 할 때 누락 된 매개 변수

분류에서Dev

페이지를 리디렉션 할 때 누락 된 세션 변수

분류에서Dev

중첩 된 ID 및 누락 된 데이터를 사용하여 data.table과 교차 조인 롤링

분류에서Dev

구성 요소 상태에서 중첩 된 개체 속성을 업데이트 할 때 useEffect를 트리거하는 방법을 잘 모릅니다.

분류에서Dev

oAuth2를 사용할 때 Google 시트 API 키 누락

분류에서Dev

모든 업데이트를 설치할 수있는 것은 아닙니다 (패키지 누락).

분류에서Dev

개체를 업데이트 할 때 중복 키 항목

분류에서Dev

PowerShell 스크립트를 실행할 때 누락 된 권한

분류에서Dev

구성 요소를 마운트 해제 할 때 중첩 된 페치 요청 중단

분류에서Dev

라이브에서 cakephp 프로젝트를 실행할 때 누락 된 데이터 소스 구성

분류에서Dev

페이지의 목록 항목 순서를 무작위로 지정할 때 누락 된 요소

분류에서Dev

서블릿 및 Jetty를 사용할 때 누락 된 이미지

분류에서Dev

Odoo 오류 예외 ( "누락 된 레코드 % r"% xid를 업데이트 할 수 없음)

분류에서Dev

난이도 중첩 된 데이터 구조를 구성 할 때

분류에서Dev

ACF 업데이트 필드를 중첩 된 repeater 필드로

분류에서Dev

for () 및 중첩 된 lapply 루프가 필요한 함수를 작성할 때 변수 유지?

분류에서Dev

동적으로 삽입 된 요소를 업데이트 할 때 해당 값을 볼 수 없습니다.

분류에서Dev

Jest / Enzyme에서 중첩 된 구성 요소를 테스트 할 때 함수 또는 노드를 찾을 수 없습니다.

분류에서Dev

Vue : 템플릿은 키를 지정할 수 없지만 템플릿을 div로 대체 할 수 없습니다-래퍼 div 요소없이 v-for가 필요하고 중첩 된 v-for 루프

분류에서Dev

SQLite를 업데이트하려고 할 때 "WHERE 구문 근처의 SQL 오류 또는 누락 된 데이터 유형"

Related 관련 기사

  1. 1

    중첩 된 주석에서 누락 된 필수 키 : [: post_id]를 찾는 방법은 무엇입니까?

  2. 2

    누락 된 키 값 쌍으로 중첩 된 사전 업데이트

  3. 3

    중첩 된 메서드를 통해 TPL을 사용할 때 UI 요소를 업데이트 할 수 없습니다.

  4. 4

    중첩 된 직렬 변환기를 ID로 업데이트 할 수없는 이유는 무엇입니까?

  5. 5

    15.04로 업데이트 할 때 누락 된 종속성

  6. 6

    15.04로 업데이트 할 때 누락 된 종속성

  7. 7

    Kotlin에서지도를 처리 할 때 누락 된 키를 어떻게 알 수 있나요?

  8. 8

    TraMineR의 seqpcplot () 함수를 사용할 때 누락 된 데이터 상태 '%'제거

  9. 9

    Code First를 사용할 때 관계 테이블에 누락 된 필드

  10. 10

    Rails에서 단일 속성 만 업데이트 할 때 누락 된 매개 변수

  11. 11

    페이지를 리디렉션 할 때 누락 된 세션 변수

  12. 12

    중첩 된 ID 및 누락 된 데이터를 사용하여 data.table과 교차 조인 롤링

  13. 13

    구성 요소 상태에서 중첩 된 개체 속성을 업데이트 할 때 useEffect를 트리거하는 방법을 잘 모릅니다.

  14. 14

    oAuth2를 사용할 때 Google 시트 API 키 누락

  15. 15

    모든 업데이트를 설치할 수있는 것은 아닙니다 (패키지 누락).

  16. 16

    개체를 업데이트 할 때 중복 키 항목

  17. 17

    PowerShell 스크립트를 실행할 때 누락 된 권한

  18. 18

    구성 요소를 마운트 해제 할 때 중첩 된 페치 요청 중단

  19. 19

    라이브에서 cakephp 프로젝트를 실행할 때 누락 된 데이터 소스 구성

  20. 20

    페이지의 목록 항목 순서를 무작위로 지정할 때 누락 된 요소

  21. 21

    서블릿 및 Jetty를 사용할 때 누락 된 이미지

  22. 22

    Odoo 오류 예외 ( "누락 된 레코드 % r"% xid를 업데이트 할 수 없음)

  23. 23

    난이도 중첩 된 데이터 구조를 구성 할 때

  24. 24

    ACF 업데이트 필드를 중첩 된 repeater 필드로

  25. 25

    for () 및 중첩 된 lapply 루프가 필요한 함수를 작성할 때 변수 유지?

  26. 26

    동적으로 삽입 된 요소를 업데이트 할 때 해당 값을 볼 수 없습니다.

  27. 27

    Jest / Enzyme에서 중첩 된 구성 요소를 테스트 할 때 함수 또는 노드를 찾을 수 없습니다.

  28. 28

    Vue : 템플릿은 키를 지정할 수 없지만 템플릿을 div로 대체 할 수 없습니다-래퍼 div 요소없이 v-for가 필요하고 중첩 된 v-for 루프

  29. 29

    SQLite를 업데이트하려고 할 때 "WHERE 구문 근처의 SQL 오류 또는 누락 된 데이터 유형"

뜨겁다태그

보관