2016-08-09 3 views
0

양식을 제출 한 후 사용자가 드롭 다운 필드에서 선택한 값을 유지하려고합니다. 나는 Django 1.8을 사용하고있다. 일부 게시물은 여기에 세션 변수에 액세스하여 PHP와 함께 할 수있는 방법에 alude :양식 제출 후 값 보유 유지

Keep values selected after form submission

장고이 할 수있는 방법이 있나요? 어쩌면 자바 스크립트 솔루션이 효과가 있을지 모르겠지만 기존 JS 코드를 수정하고 툴을 사용하는 것 외에는 JS에 익숙하지 않다.

+0

값을 선택한 후에는 무엇을하고 싶습니까? 'save()'메소드 다음에 채워지거나 폼의 다른 부분에서 사용하는 것에 대해 이야기하고 있습니까? – jape

+0

사실상 아무 것도 없으며 사용자가 양식을 제출 한 후에 채워 넣기 만하면됩니다. 그들은 해당 필드에서 검색 할 DB를 선택하고 검색 결과가 비어있는 경우 DB를 다시 선택하고 다른 검색 용어를 시도해야합니다. 드물게 DB를 전환해야하기 때문에 페이지가 다시로드 될 때 마지막 선택 항목과 함께 미리 선택해야합니다. – mk8efz

+0

선택 항목이 모델 필드에 저장되어 있습니까? 그렇다면 양식의'__init __()'메소드를 변경하여 미리 채워진 데이터를 표시 할 수 있습니다. 양식이 저장 될 때마다 해당 필드가 업데이트되고 최신 선택 사항을 표시합니다. – jape

답변

0

정보가 얼마나 중요한지에 따라 양식을 제출할 때 localStorage에 저장할 수 있으며 페이지를 새로 고칠 때 정보를 localStorage에서 간단히 가져올 수 있습니다. 한 가지 명심해야 할 점은 localStorage는 문자열 만 저장하므로 자바 스크립트 객체를 저장하려면 json을 사용할 수 있습니다.

localStorage.setItem("key", JSON.stringify(objectBeingStored)); 

찾는 중 stringValue :

var stringValue = localStorage.getItem("key"); 

가져 개체 :

var retrievedObject = JSON.parse(localStorage.getItem("key")); 
객체 저장

localStorage.setItem("key", "stringValueBeingStored"); 

:

문자열 저장 0

희망이 도움이됩니다!

0

모델에 database (또는 원하는대로)이라는 필드를 추가하고 사용자가 선택한 데이터베이스를 저장하는 것이 좋습니다.