flask-sqlalchemy mysql_Flask SQLAlchemy连接到MySQL数据库
設(shè)置代碼:
我正在構(gòu)建一個(gè)帶有AngularJS前端的基本Flask應(yīng)用程序,目前我需要連接到我用Godaddy phpmyadmin托管的MySQL數(shù)據(jù)庫(kù)。
這是我的一部分__init__.pyfrom flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
# Create instnace called app
app = Flask(__name__)
app.config['SQLAlchemy_DATABASE_URI'] = 'mysql://username:password#@xxxxxx.hostedresource.com/dbname'
# Create SQLAlchemy object
db = SQLAlchemy(app)
# ...
這是我的models.pyfrom app import app, db
class UsersPy(db.Model):
__tablename__ = "userspy"
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String, nullable=False)
password = db.Column(db.String, nullable=False)
def __init__(self, username, password):
self.username = username
self.password = password
def __repr__(self):
return '
這是my views.py中的一個(gè)片段:from app import app, db
from app.models import UsersPy
from flask import render_template, request, redirect, url_for, jsonify, session, flash
@app.route('/testdb/')
def testdb():
admin = UsersPy('user1', 'password1')
guest = UsersPy('user2', 'password2')
db.session.add(admin)
db.session.add(guest)
#db.session.merge(admin)
#db.session.merge(guest)
db.session.commit()
results = UsersPy.query.all()
json_results = []
for result in results:
d = {'username': result.username,
'password': result.password}
json_results.append(d)
return jsonify(items=json_results)
問(wèn)題:
所有這些都工作得很好,當(dāng)您訪問(wèn)/testdb/位置時(shí),用戶被“創(chuàng)建”并以JSON格式顯示,但是Godaddy托管的實(shí)際數(shù)據(jù)庫(kù)沒(méi)有被更新,因此不能建立真正的連接,否則它會(huì)由于某種原因而失敗。我已經(jīng)創(chuàng)建了userspy數(shù)據(jù)庫(kù)表,但是add()和commit()函數(shù)實(shí)際上并沒(méi)有將用戶添加到數(shù)據(jù)庫(kù)中。我不知道如何鞏固SQLAlchemy和MySQL數(shù)據(jù)庫(kù)之間的連接。感謝您的幫助。
總結(jié)
以上是生活随笔為你收集整理的flask-sqlalchemy mysql_Flask SQLAlchemy连接到MySQL数据库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 妙用PRN文件,实现文档换机打印
- 下一篇: 安卓加载asset中的json文件_An