flask 웹 페이지 제작 도중 아래와 같은 문제가 발생했다. ERROR : Method Not Allowed. The method is not allowed for the requested URL. 버튼을 클릭하면 POST 방식으로 데이터를 넘겨주면서 페이지를 이동하는데, 이상하게 주소창에 직접입력했을 땐 접근 가능한데, 버튼을 눌러서 이동하려고 하면 에러가 났다... 이유는 생각보다 간단! 깜빡하고 *.py 코드의 라우터 부분에 GET, POST로 받는다는 method 옵션을 추가해주지 않았었다. # Before : 기존 route @app.route('/main') # After @app.route('/main', method=['GET', 'POST'])
가상환경을 사용하려고 아래와 같은 명령어를 입력했다. myvenv\Scripts\activate 그런데 스크립트를 실행할 수 없다는 문제 발생. 비슷한 사례를 찾아보니, Scripts안 activate 파일을 실행시킬 때 해당 파일을 실행할 권한이 없어서 발생하는 경우가 있었다. (참고로 내 개발환경은 Window) 나와 같이 윈도우 환경에서 문제가 생긴경우, Window-powshell 에서 아래와 같은 명령어 사용으로 문제를 해결할 수 있었다. (Widnow powershell 관리자 권한으로 실행) Set-ExecutionPolicy Unrestricted -Force 이후 VS Code에서 activate 가 정상적으로 동작할 수 있었다! 참고 https://stackoverflow.com/que..
에러 상황은 다음과 같습니다. 1. Falsk 웹 페이지 개발 중, AJAX를 통해 데이터 요청함. 2. 요청이 들어오면 MySQL 쿼리문으로 데이터 검색 후, 결과 값을 Json 타입으로 반환해서 return 3. 이때 에러 발생! TypeError: Object of type 'Decimal' is not JSON serializable 이상한건, 쿼리문이나 검색 결과를 print()로 로그로 찍어봤을 땐 아무런 문제가 없었다는 것... 에러 내용은 TypeError: 'Decimal' 형식의 개체는 JSON을 직렬화할 수 없습니다. 인데 검색결과는 잘나오니까 뭐가 문제지?? 싶었다.그런데 쿼리 검색 결과를 로그로 잘 찍어보니, 검색내용 중에 곱하기 나누기등을 사용해서 퍼센트 구하는 공식이 있었는데 ..