【发布时间】:2016-12-01 03:50:49
【问题描述】:
型号是
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
artistname = db.Column(db.String(64))
photourl = db.Column(db.String(1000))
contactInfo = db.Column(db.String(20))
description = db.Column(db.String(500))
date = db.Column(db.Date)
def __repr__(self):
return '<User %r>' % (self.photourl)
这里的 photourl 是发布的照片的 url。
表单提交后。
user = User(artistname = form.artist.data,photourl = "",
description = form.description.data,contactInfo = form.contactinfo.data,date = datetime.datetime.utcnow().date() )
我添加了所有没有照片网址的细节。
现在我列出了存储在下面代码中的 filename 变量中的所有文件名。并在中间加入 *。
filename = "*".join(filename)
print(filename)
打印文件名终端出现的示例输出是
mic16.jpg*nepal_earthquake_death6.png
合并所有文件名后。我将它存储在数据库中。
user.photourl = filename
print(user)
db.session.add(user)
db.session.commit()
这里用户在终端的打印输出是
<User u'mic16.jpg*nepal_earthquake_death6.png'>
这表明信息已正确加载。
现在,当我执行 db.session.add(user) 后跟 db.session.commit()。 在 photourl 列下的数据库的 user 表中,只有 mic16.jpg 部分是存储,其余部分被省略,即存储 * 之前的部分。
数据库中没有条目。如果是MYSQL数据库并使用phpmyadmin,则为我的数据库。我正在使用读取数据库。
posts = User.query.order_by(User.date.desc()).limit(5).all()
photourls = []
for i in posts:
photourls.append(i.photourl.split('*'))
必填网址应在照片网址中。但每个帖子只有一个单个网址。
我只是疯了,不知道发生了什么?
【问题讨论】:
-
您是否尝试过
*以外的其他方法? -
是的,我首先尝试使用 ,然后我继续使用 *
-
你是如何从数据库中读回的?..你能发布代码吗?带输出..
-
我已经编辑了帖子并添加了我阅读数据库的方式。但是,在数据库表本身中,我找不到 url 的后半部分。 IE。 * 之后的部分
-
可以尝试将
*替换为其他字符,例如S..
标签: python mysql session flask flask-sqlalchemy