使用SQLAlchemy保存到mysql后,每个单词的第一个字母变为大写

时间:2015-04-15 06:01:39

标签: python mysql flask flask-sqlalchemy

我正在尝试使用Flask + SQLAlchemy构建一个rest api。我是新来的。我刚遇到有线问题。保存到mysql的单词后,每个单词的首字母大写。代码如下:

@app.route('/gifs')
def crawlHome():
    url = "http://domain.com.cn"
    newgif = Gif(url)
    db.session.add(newgif)
    db.session.commit() 



class Gif(db.Model):
    __tablename__ = "gifs"
    uid = db.Column(db.Integer, primary_key = True)
    url = db.Column(db.String(200))
    def __init__(self, url):
        self.url = url.title()
    @property
    def serialize(self):
        return {
            'uid' : self.uid,
            'url' : self.url
        }

保存的网址如下:"Http://Domain.Com.Cn"。为什么?我是python的新手。所以,请原谅我的无知。

1 个答案:

答案 0 :(得分:1)

您的网址已大写,因为您正在使用字符串内置类型中的title函数。

>>> "http://domain.com.cn".title()
'Http://Domain.Com.Cn'

您需要在self.url = url.title()模型self.url = url函数中将Gif替换为__init__