python django 기능 문제

조회수 555회

기능 - 투표 선택지 1 2 3번중 하나를 누르고 투표하면 결과창이 보여짐

개선 - 위 기능은 그대로 두되 투표를 하지 않고도 바로 결과창으로 넘어가게끔 만들고자함

문제 - 투표 결과가 나타나는 파일은 result인데 결과 이상태로 입력하면 오류가 뜨면서 사이트가 작동을 하지 않음

그니까 게시판 > 투표 > 결과 이러한 방식 말고 게시판 > 결과 이런식으로

제대로 작동하게끔 하려면 어떻게 해야될까요?!

이미지 이미지 이미지 이미지 이미지

  • (•́ ✖ •̀)
    알 수 없는 사용자
  • 질문이 뭔가 부족한 듯 보이는데요....투표 -> 결과창, 결과 보기 -> 결과창 이렇게 연결하면 문제는 없을 것 같은데...result.html로 넘어갈 때 투표를 안했으면 default 값 혹은.. 현재 진행한 만큼의 정보만을 넘겨서 표현을 해주면 되지 않을까 싶습니다. 근데 result.html에서 입력 오류가 생긴다면 그 코드를 보여줘야 하지 않을까 싶네요... 알 수 없는 사용자 2019.10.17 10:13
  • result.html 코드 사진 올렸습니다 알 수 없는 사용자 2019.10.17 12:00

1 답변

  • 결과 화면을 만드는 소스 빼고 다 올려주셨기 때문에 구체적으로는 답을 못 드리겠구요... 기본 아이디어는, 결과 화면에서 나의 투표 정보가 필수값이 아니도록 하면 됩니다.

    일반적인 시나리오는 대충 이렇습니다.

    1. 일단 무조건 가장 최근의 투표 결과를 볼 수 있는 화면을 만든다. (투표를 했건 안했건 관계없고 그냥 DB상의 현재 상황을 뿌려줌)
    2. 투표를 할 수 있는 폼을 만든다.
    3. 그 폼이 제출되었을 때의 행동은, 입력받은 투표 정보를 DB에 적용한 다음 1번에서 만든 화면으로 리디렉션하는 것이다.

    게시판에 비유하자면, 결과화면 = 글목록, 투표폼 = 글쓰기화면 입니다. 글쓰기를 하든 안 하든 글목록 자체는 항상 볼 수 있죠. 글을 쓰든 안 쓰든 가장 최신글부터 보여지게 되구요. 그래서 장면 자체의 본질은 게시판과 매우 흡사해 보입니다. 소스를 열어놓고 한번 생각해 보세요.

    • result.html 결과 화면을 만드는 소스 올렸습니다!! 알 수 없는 사용자 2019.10.17 12:01
    • 음.. html은 결과 화면이구요 그걸 만드는 파이썬 소스를 올려달란 뜻이었어요.. 뭐 아무래도 좋습니다. 엽토군 2019.10.18 14:49

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)