나는 User
이며 모든 사용자는 하나의 Contact
항목을 가져야합니다 (단, 모든 연락처에 사용자가 있어야하는 것은 아닙니다). 사용자는 중첩 된 양식을 통해 연락처를 만들 수 있지만 그 사실에 만족하지 않습니다.ActiveAdmin 자동 중첩 항목 하나 생성
내가 새로 User
으로 갈 때 자동으로 첫 번째 것을 만들고 더 많은 연락처 항목을 추가 할 수 없게 설정하려면 어떻게해야합니까?
나는 User
이며 모든 사용자는 하나의 Contact
항목을 가져야합니다 (단, 모든 연락처에 사용자가 있어야하는 것은 아닙니다). 사용자는 중첩 된 양식을 통해 연락처를 만들 수 있지만 그 사실에 만족하지 않습니다.ActiveAdmin 자동 중첩 항목 하나 생성
내가 새로 User
으로 갈 때 자동으로 첫 번째 것을 만들고 더 많은 연락처 항목을 추가 할 수 없게 설정하려면 어떻게해야합니까?
몇 가지 검색을 한 후에 나는 대답을 찾았으며 두 단계로 나옵니다.
첫 번째로 중첩 된 항목이 먼저 만들어 지도록하려면 먼저 컨트롤러의 새 메서드를 재정의하고 먼저 원하는 모든 하위 항목을 초기화해야합니다. 이렇게하면 중첩 된 항목이 만들어지고 페이지가 렌더링됩니다 . 예제로 내 질문을 사용
, 당신은 이런 식으로 할 것 : #new_user
가 이름 인 상태
#new_user .has_many_remove {
display: none;
}
:
는controller do
def new
@user = User.new
@user.contact = Contact.new
new!
end
end
두 번째는 당신의 active_admin의 CSS 파일에 다음을 추가하는 것입니다 내 양식의 이름으로 대체하십시오.
ActiveAdmin에 대한 github 문제에서 대답 here이 발견되었습니다.