スパルタコードWebページ開発プラス1週間

5736 ワード

じかんしょり


from datetime import datetime


添付ファイルの処理

file = request.files["file_give"]

extention = file.filename.split('.')[-1]

today = datetime.now()
mytime = today.strftime('%Y-%m-%d-%H-%M-%S')

write_time = today.strftime('%Y-%m-%d')

filename = f'file-{mytime}'

save_to = f'static/{filename}.{extention}'
file.save(save_to)

doc = {
    'title' : title_receive,
    'content' : content_receive,
    'file' : f'{filename}.{extention}',
    'time' : write_time
}

db.diary.insert_one(doc)

添付ファイル処理情報関数の読み込み

    function listing() {
        $.ajax({
            type: "GET",
            url: "/diary",
            data: {},
            success: function (response) {
                let diaris = response['all_diaris']

                for (let i = 0; i < diaris.length; i++) {
                    let title = diaris[i]['title']
                    let content = diaris[i]['content']
                    let file = diaris[i]['file']
                    let time = diaris[i]['time']

                    let temp_html = `
                            <div class="card">
                                <img src="../static/${file}" class="card-img-top">
                                <div class="card-body">
                                    <h5 class="card-title">${title}</h5>
                                    <p class="card-text">${content}</p>
                                    <p class="card-text">${time}</p>
                                </div>
                            </div>
                    `

                    $('#cards-box').append(temp_html)
                }
            }
        })
    }
    
    

添付処理情報処理関数

    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()
            }
        });
    }