Flask ve sqlalchemy kullanıyorum ve dosya yükleme konusunda sorun yaşıyorum.Flask and sqlalchemy: Veritabanında saklanan yolu kullanarak karşıya yüklenen dosyayı alın
Dosyayı bir formla yüklüyorum ve URL'yi DB'ye saklıyorum, böylece sayfanın içinde görüntüleyebiliyorum.
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()
Yani benim şablonuna gidip game_son.boxart içeriğini yazdırabilirsiniz ve dosyanın tam yolunu vardır:
İşte formun kod. Ben linke tıklarsanız, ben kullanarak şablona onu elde çalıştım
... Ben erişebilir ancak görüntü içeride etiketi görüntülemez:
<img src="{{ game_son.boxart_url() }}" />
modeli içinde, ben tanımlanan bir boxart_url yöntem durumunda bunun
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)
sayfanın görünüm sadece sayfasına bütün nesneyi (oyun) göndermek göndermeden önce dize ayrıştırmak gerekir.
sayfada varıyor url geçerli:
/home/removed_my_pc_user/app/media/boxart/image.jpg
Düzenleme: şimdi hatırladım ben kullanıyorum bir proje üzerinde sanal ortam.
Bu chmod ile ilişkili midir?
şimdiden teşekkür ederiz !!
Şablonunuzdaki görüntüyü gösteren kodunuz nerede? Verileri veritabanından nasıl geri alıyorsunuz? Ekleme bildirimini sağladınız, ancak bu, sorununuzu, resim etiketinde gösterilmemesiyle çözmemize yardımcı olmaz. – CodeLikeBeaker
Teşekkür ederim. Soruya daha fazla bilgi ekledim. Başka bir şey varsa, söyle bana. – Felipe
Kaynağı görüntülediğinizde, img etiketinizin src'si nedir? – CodeLikeBeaker