У меня есть область загрузки изображений с Flask.Эта область также может загружать несколько изображений.Есть до 8 треков загрузки изображений.После загрузки сохраненных изображений я помещаю их в файл.Я выложу изображения, которые они загружают снова на сайте.Я думаю о регистрации в базе данных, но я не знаю, как это зарегистрировать.Я хочу картинки с входным файлом.Сколько изображений было загружено, и я не понимаю, как их нарисовать.
Короче говоря, когда пользователь сохраняет сохраненные изображения, я сохраняю его в файле и хочу сохранить загруженные изображения.в базу данных для публикации на моем сайте.Как я могу это сделать?Я использую SQLalchemy.
HTML;
<input id="files" name="files" type="file" multiple>
Python;
UPLOAD_FOLDER = 'static/uploads/'
ALLOWED_EXTENSIONS = set(['png', 'jpg', 'jpeg', 'gif'])
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
class AlbumForm(Form):
files = FileField(render_kw={'multiple': True})
#Album form
def allowed_file(filename):
return '.' in filename and \
filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS
@app.route("/admin/fotografAlbumu", methods=["GET", "POST"])
def upload():
form = AlbumForm(request.form)
if request.method == 'POST' and 'files' in request.files:
for f in request.files.getlist('files'):
files = form.files.data
username = session["username"]
url=app.config['UPLOAD_FOLDER']+username
f.save(os.path.join(url, f.filename))
return render_template('/admin/galeri.html',form=form)
return render_template('/admin/galeri.html',form=form)
@app.route('/uploaded_file/<path:filename>')
def uploaded_file(filename):
print(filename)
username = session["username"]
url=app.config['UPLOAD_FOLDER']+username
return send_from_directory(url, filename)
Я считаю, что структура базы данных выглядит следующим образом:
class Album(db.Model):
albumid = db.Column(db.Integer, primary_key=True)
userid = db.Column(db.Integer, db.ForeignKey('users.userid'))
fotoOne = db.Column(db.String(80))
fotoTwo = db.Column(db.String(80))
fotoThree = db.Column(db.String(80))
fotoFour = db.Column(db.String(80))
fotoFive = db.Column(db.String(80))
fotoSix = db.Column(db.String(80))
fotoSeven = db.Column(db.String(80))
fotoEight = db.Column(db.String(80))