2010-01-22 2 views
0

인라인 양식의 관리 인터페이스에서 외래 키 필드가 있습니다.마스터 모델을 기반으로 인라인 된 외래 키를 필터링하는 방법

다음 이미지를 보면 http://www.image-share.com/ipng-147-172.html 엔진 필드 (근접으로 설정)가 있습니다.

내가 원하는 것은 엔진 선택에 따라 목록 (현재 track.context.max_media_duration 및 track.ambient.max_media_duration)에 나타나는 것을 필터링하는 것입니다.

선택이 변경되면 변경하고 싶습니다. 또한 삭제를 위해 필터링 된 기존의 항목을 표시하거나 삭제해야합니다.

그런 기능을 구현하려면 어디서부터 시작해야할지 모르겠다.

감사

답변

0

가장 쉬운 방법, 내 의견으로는, (예를 들어, jQuery로)는 AJAX 콜백으로 모든 것을 할 것입니다. 일반적인 코드 흐름은 다음과 같을 수 있습니다.

  1. id_engine 필드에 jQuery onChange 이벤트를 추가하십시오.
  2. id_engine이 변경 사항을 푸시 다운하면 콜백이 트리거됩니다.
  3. 콜백은 특정 URL로 다시 설정 한 URL을 호출하고 값을 JSON 데이터로 반환합니다.
  4. 이 값은 아래의 풀다운에있는 내용을 덮어 쓰는 데 사용하는 값입니다. jQuery는이를 매우 간단하게 덮어 쓸 수 있습니다. Django가 기본적으로 출력하는 것과 일치하도록 조심해야합니다. 즉, 폼 이름과 값을 비슷하게 유지하면 Django는 데이터를 POST 할 때 핸들을 처리하는 방법을 알게됩니다.
+0

필터링 할 큰 데이터 집합이 없으므로 제안한 전체 JS 솔루션이 가장 우수하고 구현이 간단 할 것입니다 (최대 백). 나는 다른 제안을 기다릴 것이다. –

+0

몇 줄의 JS 코드와 간단한 장고보기에서이 솔루션을 구현하기 시작했습니다. –

관련 문제