Comment utiliser Python pour écrire la fonction de gestion d'images d'un système CMS
Aperçu :
Avec le développement rapide d'Internet, les systèmes de gestion de contenu (CMS) sont devenus un élément indispensable du développement Web. Parmi eux, la fonction de gestion d’images est l’un des modules très importants et courants du système CMS. Grâce à la fonction de gestion d'images, vous pouvez facilement télécharger, supprimer, modifier et afficher des ressources d'images sur le site Web. Cet article expliquera comment utiliser Python pour écrire la fonction de gestion d'images d'un système CMS simple et donnera des exemples de code correspondants.
Pile technologique principale :
Préparation de l'environnement :
python -m venv myenv
dans la ligne de commande pour créer un environnement virtuel 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 dans la ligne de commande < /code> (Linux/MacOS) ou <code>myenvScripts ctivate
(Windows) pour activer l'environnement virtuelInstaller les dépendances : exécutez pip install flask sqlalchemy Pillow
dans l'environnement virtuel pour installer les packages de dépendances requisExemple de code :Tout d'abord, nous devons créer une application Flask et configurer la connexion à la base de données. @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)
uploads
, puis enregistre le titre et le nom du fichier dans la base de données. 🎜@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
et en cliquant sur une seule image pour afficher ses détails. 🎜<!-- 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 }}">
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!