python -m venv myenv
接下來,我們實現圖片上傳功能,用戶可以選擇並上傳圖片,系統將圖片保存到本地的uploads目錄,並將圖片信息存入數據庫。
@app.route('/upload', methods=['POST']) def upload(): file = request.files.get("image") if file: img = Image.open(file) img.save("uploads/" + file.filename) image = Image(title=request.form.get("title"), filename=file.filename) db.session.add(image) db.session.commit() return "Upload successful!" else: return "Upload failed!"
然後,繼續實現圖片展示功能,用戶可以通過訪問/images路徑查看所有上傳的圖片,並通過點擊查看詳細信息。
@app.route('/images') def images(): images = Image.query.all() return render_template('images.html', images=images)
@app.route('/image/<int:image_id> ') def image_detail(image_id): image = Image.query.get(image_id) return render_template('image_detail.html', image=image)
最後,添加圖片刪除功能,用戶可以通過點擊“刪除”按鈕來刪除指定的圖片。
@app.route('/delete/<int:image_id> ') def delete_image(image_id): image = Image.query.get(image_id) db.session.delete(image) db.session.commit() return redirect('/images')
為了優化用戶體驗,可以在前端頁面中使用適當的HTML和CSS,配合Jinja2模板引擎渲染動態內容。
通過以上代碼示例,我們已經展示瞭如何使用Python和Flask框架實現CMS系統的圖片管理功能。這只是一個簡單的示例,實際的CMS系統可能還需要更多複雜的功能和邏輯。希望本篇文章能夠給讀者提供一些靈感,幫助開發者在項目中實現圖片管理功能。希望大家繼續深入學習Web開發技術,提升自己的能力。