inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

남박사의 파이썬으로 실전 웹사이트 만들기

게시판만들기 - 글 쓰기

title 부분이 null 로 저장됩니다

해결된 질문

400

Victoria

작성한 질문수 4

1

안녕하세요 강의 잘 듣고있습니다.

강의 처음부터 끝까지 잘 따라했고 문제없이 실행되는데 title 부분이 null로 저정됩니다.

크롭에서 내용 입력하고 제출은 문제 없이 잘 됩니다.

title-null robo.png


vscode 에서 터미널로 결과를 볼때는 none 이라고 나오구요

print(name, title, contents)

>테스터 None ㅎㅎㅎㅎㅎㅎ

from flask import Flask
from flask import request
from flask import render_template
from flask_pymongo import PyMongo
from datetime import datetime


app = Flask(__name__)
app.config["MONGO_URI"] = "mongodb://localhost:27017/myweb"
mongo = PyMongo(app)


@app.route("/write", methods=["GET", "POST"])
def board_write():
    if request.method == "POST":
        name = request.form.get("name")
        title = request.form.get("title")
        contents = request.form.get("contents")
        print(name, title, contents)

        current_utc_time = round(datetime.utcnow().timestamp() * 1000)
        board = mongo.db.board
        post = {
            "name": name,
            "title": title,
            "contents": contents,
            "pubdate": current_utc_time,
            "view": 0
        }

        x = board.insert_one(post)
        print(x.inserted_id)
        return str(x.inserted_id)
    else:
        return render_template("write.html")


if __name__ == "__main__":
    app.run(host="0.0.0.0", debug=True, port=9000)

 


write.html

<html>
    <body>
        <table>
            <form name="form" method="POST" action="/write">
            <tr>
                <td>작성자</td>
                <td><input type="text" name="name"></td>
            </tr>
            <tr>
                <td>제목</td>
                <td><input type="text" name="title>"></td>
            </tr>
            <tr>
                <td>내용</td>
                <td><textarea name="contents"></textarea></td>
            </tr>
            <tr>
                <td colspan="2"><input type="submit"></td>
            </tr>
            </form>
        </table>
    </body>
</html>

 

뭐가 문제일까요?...?

 

python

답변 1

0

남박사

일단 내용만으로는 별 문제는 없어보입니다만..(저한테도 안보이는것일수도 있습니다.)

원래 오류는 사람의 혼을 빼놓는 능력이 있어서...

일단 파이썬 코드쪽 request.form.title 에서도 None이 나오면 데이터가 정상적으로 받아오질 못했다는 얘기인데 그러면 일단 title 대신 title1 과 같이 name을 변경해보시고 input 항목을 하나 더 만들어서 <input type="text" name="test"> 처럼 새로운 항목도 문제가 없는지 확인해보시기 바랍니다.

만약 이름을 변경하고 항목을 추가했을때 별 문제가 없다면 title 이라는 이름이 어딘가에서 재사용되고 있을 수 있으니 그 부분을 확인해보시기 바랍니다.

계속 해결이 안되시면 다시 질문 주시기 바랍니다.

0

Victoria


노승아

2022.10.06 오후 3:04

앗 답변 감사합니다 ! 알려주신 방법으로 시도하다가 오타난걸 발견했고 오타 수정하고 다시 하니까 잘 나오네요 ㅎㅎ 감사합니다 !

iis 접속후 자동으로 로그인 창이 나오도록 설정이 기능한가요?

0

84

2

리스트 이동 시 창 에러 발생

0

90

1

배포후 회원 등록 후 로그인 에러...

0

88

2

내부 서버 오류

0

85

2

app.config["MONGO_URI"] = "mongodb://localhost:27017/pm_db"

0

65

2

DB 검색하면 데이터가 없습니다. 라고 나와요. 5시간을 찾아봐도 모르겠어서 문의드려봅니다.

0

63

1

몽고db studio3T를 깔았는데

0

71

2

flake8과 linter

0

89

3

500이 뜹니다.

0

66

2

첨부파일 삭제

0

73

2

검색기능 질문

0

75

2

google.py

0

75

2

Studio 3T에 DB insert가 되지 않는 문제를 해결하지 못하고 있습니다 ㅠ

0

93

3

혹시 전체 코드 공개되어 있나요?

0

104

1

join.html 의 form 태그값 을 member_join() 에서 처리못함.

0

112

1

google.py 몽고db 샘플데이터 만들기

0

111

2

flake8 설치 이후 명령팔레트에서 linter가 안보입니다.

0

253

2

파이썬으로 만들어서 웹호스팅에 올릴경우

0

315

1

현재 구글검색 무한스크롤변경 문의합니다

0

306

1

몽고디비아틀라스로 추가 공부해서 올립니다.

0

225

1

IIS 500.19에러

0

669

2

버전 문제도 수정했는데 결과가 안나옵니다.

0

264

1

데이터베이스 저장관련 질문입니다.

0

280

1

test가 생기지 않습니다.

0

519

3