문제

이 게시물은 다음과 관련이 있습니다.Django Admin에서 동적으로 인라인에 행을 추가하십시오

JavaScript를 사용하지 않고 인라인 폼 세트를 추가하는 방법이 있습니까? 분명히, 페이지가 관련된 페이지가있을 것입니다.

양식에 'Add'라는 버튼이 있으면 ...

나는 이것처럼 할 수 있다고 생각했다.

if request.method=='POST':
  if 'add' in request.POST:
    PrimaryFunctionFormSet = inlineformset_factory(Position,Function,extra=1)
    prims = PrimaryFunctionFormSet(request.POST)

매번 1을 추가 할 것이라고 생각한 다음 포스트 데이터로 양식을 채 웁니다. 그러나 추가 = 1은 게시물 데이터에 1을 추가하지 않는 것 같습니다.

도움이 되었습니까?

해결책

알았어요.

때로는 가장 간단한 솔루션입니다. 요청 데이터의 사본 만 작성하고 총 형식을 수정하십시오.

예를 들어..

if request.method=='POST':
  PrimaryFunctionFormSet = inlineformset_factory(Position,Function)
  if 'add' in request.POST:
    cp = request.POST.copy()
    cp['prim-TOTAL_FORMS'] = int(cp['prim-TOTAL_FORMS'])+ 1
    prims = PrimaryFunctionFormSet(cp,prefix='prim')

그런 다음 형태를 정상적으로 뱉어냅니다. 데이터를 유지하고 인라인 편집기를 추가합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top