Cara menggunakan Python untuk menulis fungsi pengurusan imej sistem CMS
Ikhtisar:
Dengan perkembangan pesat Internet, sistem pengurusan kandungan (CMS) telah menjadi bahagian yang sangat diperlukan dalam pembangunan web. Antaranya, fungsi pengurusan imej adalah salah satu modul yang sangat penting dan biasa dalam sistem CMS. Melalui fungsi pengurusan imej, anda boleh memuat naik, memadam, mengedit dan memaparkan sumber imej dengan mudah di laman web. Artikel ini akan memperkenalkan cara menggunakan Python untuk menulis fungsi pengurusan imej sistem CMS mudah, dan memberikan contoh kod yang sepadan.
Timbunan teknologi utama:
Persediaan persekitaran:
python -m venv myenv
dalam baris arahan untuk mencipta persekitaran maya python -m venv myenv
来创建一个虚拟环境source myenv/bin/activate
(Linux/MacOS) 或者 myenvScriptsctivate
(Windows) 来激活虚拟环境pip install flask sqlalchemy pillow
来安装所需的依赖包代码示例:
首先,我们需要创建一个Flask应用,并配置数据库连接。
from flask import Flask, render_template, request from flask_sqlalchemy import SQLAlchemy from PIL import Image app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///images.db' db = SQLAlchemy(app) class Image(db.Model): id = db.Column(db.Integer, primary_key=True) title = db.Column(db.String(80)) filename = db.Column(db.String(80))
接下来,我们需要实现图片上传的功能。用户在前端页面选择并上传图片,后端接收到图片并保存到本地的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
source myenv/bin/activate dalam baris arahan < /code> (Linux/MacOS) atau <code>myenvScripts ctivate
(Windows) untuk mengaktifkan persekitaran mayaPasang kebergantungan: jalankan pip install flask sqlalchemy pillow
dalam persekitaran maya untuk Pasang pakej pergantungan yang diperlukan Contoh kod: Mula-mula, kita perlu mencipta aplikasi Flask dan mengkonfigurasi sambungan pangkalan data. @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)
muat naik
setempat, dan kemudian menyimpan tajuk dan nama fail ke pangkalan data. 🎜@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')
/images
dan klik pada satu imej untuk melihat butirannya. 🎜<!-- images.html --> {% for image in images %} <div> <img src="{{ url_for('static', filename='uploads/' + image.filename) }}" alt="{{ image.title }}"> <a href="{{ url_for('image_detail', image_id=image.id) }}">View details</a> <a href="{{ url_for('delete_image', image_id=image.id) }}">Delete</a> </div> {% endfor %}
<!-- image_detail.html --> <h1>{{ image.title }}</h1> <img src="{{ url_for('static', filename='uploads/' + image.filename) }}" alt="{{ image.title }}">
Atas ialah kandungan terperinci Cara menggunakan Python untuk menulis fungsi pengurusan imej sistem CMS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!