Sto utilizzando il pallone e sqlalchemy e sto riscontrando problemi relativi al caricamento dei file.Flask e sqlalchemy: scarica il file utilizzando il percorso memorizzato nel database
Sto caricando il file con un modulo e memorizzando l'URL nel DB, così posso visualizzarlo all'interno della pagina.
Ecco il codice del form:
boxart = request.files['boxart']
if boxart:
filename = secure_filename(boxart.filename)
boxart_path = os.path.join(app.config['UPLOAD_FOLDER']+"boxart/", filename)
boxart.save(boxart_path)
game_son.boxart = boxart_path
db.session.add(game_son)
db.session.commit()
così vado al mio modello e posso stampare il contenuto di game_son.boxart e non v'è il percorso completo del file. Se clicco sul link, posso accedere, ma l'immagine non verrà visualizzata tag all'interno ...
ho provato ottenerlo sul modello utilizzando:
<img src="{{ game_son.boxart_url() }}" />
all'interno del modello, ho definito un metodo boxart_url, nel caso in cui ho bisogno di analizzare la stringa prima di inviarlo
class Game_son(db.Model):
__searchable__ = ['version_name']
son_id = db.Column(db.Integer, primary_key=True)
version_name = db.Column(db.String(128), index=True, unique=False)
son_timestamp = db.Column(db.DateTime)
dad = db.Column(db.Integer, db.ForeignKey('game_dad.id'))
console = db.Column(db.Integer, db.ForeignKey('platform.id'))
boxart = db.Column(db.String(256))
thumbnail = db.Column(db.String(256))
genre = db.Column(db.String(32))
subgenre = db.Column(db.String(32))
def boxart_url(self):
return self.boxart
def __repr__(self):
return '<Game %r>: %r' % (self.version_name, self.dad)
vista della pagina è sufficiente inviare l'intero oggetto (gioco) alla pagina.
l'URL che sta arrivando sulla pagina è:
/home/removed_my_pc_user/app/media/boxart/image.jpg
Edit: ho appena ricordato che sto usando un ambiente virtuale sul progetto.
E 'collegato a chmod?
Grazie in anticipo !!
Dov'è il codice che mostra l'immagine nel modello? Come stai recuperando i dati dal database? Hai fornito la dichiarazione di inserimento, ma questo non ci aiuta a risolvere il tuo problema perché non viene visualizzato nel tag immagine. – CodeLikeBeaker
Grazie. Ho aggiunto più informazioni nella domanda. Se c'è qualcos'altro, dimmelo. – Felipe
Quando si visualizza l'origine, qual è lo src per il tag img? – CodeLikeBeaker