Map
모델이 있는데,이 모델은 머드의 특정 영역에 대한 ASCII 아트지도의 세부 정보를 정의합니다. ID 대신 이름을 사용하여 각지도의 페이지에 접근 할 수 있기를 원하므로 Western Ithmia의지도가 있다면 /maps/western_ithmia
(또는 /maps/withmia
)에서 액세스 할 수 있기를 원합니다.두 개의 관련 Rails 모델을 동시에 만들어야합니다.
두 번째 모델 MapAlias
에지도에 도달하기 위해 경로에 사용할 수있는 기존의 모든 짧은 이름이 포함되어 있습니다. 외래 키는 각 별칭과 함께 저장되어 해당 Map
의 ID를 나타냅니다.
내가하고 싶은 일은 새로 만든 Map
과 동시에 새로 MapAlias
을 새로 만듭니다. 안타깝게도 새로운 Map
의 ID가 저장 될 때까지는 그럴 수없는 것처럼 보이지만 새로운 MapAlias
을 확인/저장하기 전에는 저장하지 않으려 고합니다. 이 점을 악화시키는 이유는 각 MapAlias
이 기본 별칭인지, 즉 링크가 생성 된 별칭인지를 각자 Map
에게 알리고 싶다는 것입니다. 이것은 내게 순환 종속성처럼 보입니다 ...
저는 레일스에서 아직 익숙하지 않아서 무엇을해야하는지 확신 할 수 없지만 (before_save와 같은) 모델 콜백 훅을 탐구했습니다 제한된 성공 - 나는 여전히 대응할 순환 의존성을 가지고있다. 어떤 아이디어? =/