Web 심화 1 - 파일업로드

호호빵·2022년 4월 28일
0

Web

목록 보기
5/12
console 창에 $('#file') 쳐보기 -> 여러가지 많이 나옴
$('#file')[0]  -> 아이디 붙인 태그 하나 나옴
$('#file')[0].files  -> 들어있는 파일들의 개수 나옴(현재 0개)
$('#file')[0].files[0] -> 사진을 올리고 나서, 첫번째 사진 나옴
function posting() {
    let title = $('#title').val()
    let content = $("#content").val()

    let file = $('#file')[0].files[0]
    let form_data = new FormData()

    form_data.append("file_give", file)
    form_data.append("title_give", title)
    form_data.append("content_give", content)

    $.ajax({
        type: "POST",
        url: "/diary",
        data: form_data,
        cache: false,
        contentType: false,
        processData: false,
        success: function (response) {
            alert(response["msg"])
            window.location.reload()
        }
    });
}

사진 mypicture.jpg 로 자동저장 코드

file = request.files["file_give"]

    save_to = 'static/mypicture.jpg'
    file.save(save_to)

f string

name = '홍길동'
age = 30

# 앞에 선언한 것을 바로 가져올 수 있음
hello = f'제 이름은 {name}입니다. 나이는 {age}입니다.'
print(hello)


from datetime import datetime

today = datetime.now()      -> 22-04-28 13:22:08 13654
mytime = today.strftime('%Y년-%m-%d-%H-%M-%S')
							-> 2204-28 13:22:08
filename = f'file-{mytime}' -> file-2204-28 13:22:08
print(filename)


# 확장자만 따로 빼내기
extension = file.filename.split('.')[-1]

# 새로운 이름으로 저장하고 
save_to = f'static/{filename}.{extension}'
file.save(save_to)

# 변경된 파일이름을 db에도 저장하기
doc = {
    'title':title_receive,
    'content':content_receive,
    'file':f'{filename}.{extension}',
}
db.diary.insert_one(doc)

한줄 짜리 함수 바로 적기

<script>
        function to_main() {
            window.location.href="/"
        }
</script>
</head>
<body>
    <h1>상세페이지</h1>
    <button onclick="to_main">메인으로 돌아가기</button>
</body>
</html>

# 한 줄로 적으면

<script>
        # 함수 x
</script>
</head>
<body>
    <h1>상세페이지</h1>	
    <button onclick="window.location.href='/'">메인으로 돌아가기</button>			
</body>					# 바로적기, "" 중복이라 ''로 변경
</html>


jinga2 언어로 for문

 {% for row in rows %}
        {% set gu_name = row["MSRSTE_NM"]  %}
        {% set gu_mise = row["IDEX_MVL"]  %}
        <li>{{ gu_name }}: {{ gu_mise|int }}</li>
    {% endfor %}

app.py 의 headers 내 토큰 (주소로 요청 보낼때 헤더스 정보를 같이 보내서 결과를 받아옴.)

+ 가비아 도메인 구매, OG 태그

profile
하루에 한 개념씩

0개의 댓글