0
我創建了一個可以從MySQL獲取數據的API。它在定義stockList時工作。但是,在現實世界中,我需要從Ionic應用程序獲取它,並且stockList由個人用戶定義。燒瓶Python:接受離子應用程序進入燒瓶的數據
簡單的說stockList =[]
不起作用。 目前flask_app.py是如下:
from flask import Flask,jsonify,abort,make_response,request
import MySQLdb
import MySQLdb.cursors
app = Flask(__name__)
@app.route('/KLSEwatch', methods=['GET'])
def KLSEwatch():
db = MySQLdb.connect(host='vinvin.mysql.pythonanywhere-services.com',user='vinvin',passwd='xxx',db='vinukdb$default',cursorclass=MySQLdb.cursors.DictCursor)
curs = db.cursor()
stockList = ['SHELL','GENM']
placeholders = ','.join(['%s'] * len(stockList))
query = 'SELECT * FROM KLSE WHERE Stock IN ({})'.format(placeholders)
curs.execute(query,tuple(stockList))
f = curs.fetchall()
return jsonify({'Stock': f})
我拿什麼取代stockList,因爲它必須得到用戶的數據,這是由離子的應用程序。該數據可以是字符串或一個4位數字
下面是離子應用在watchlistCtrl.js代碼
//setting get counter-number of get requests-
var getCounter = 0;
for (var market in watchListQuery) {
if(watchListQuery[market].length>0){
getCounter += 1;
}
}
if(getCounter == 0)
$ionicLoading.hide();
$scope.watchedStocks = [];
for (var market in watchListQuery) {
if(watchListQuery[market].length>0){
var queryString = watchListQuery[market].toString().replace(/,/g, "','");
$webServicesFactory.get($marketProvider[market].queryURL+"/watchlist_query", {AnonymousToken: $marketProvider[market].token}, {parameters:{stockList:queryString}}).then(
function success(data) {
getCounter -=1 ;
$scope.watchedStocks = $scope.watchedStocks.concat(data);
if(getCounter <= 0)
$ionicLoading.hide();
},
function error() {
$ionicLoading.hide();
}
);
}
}//end of for each loop
什麼是'@ pp.route('/')'哪個'返回render_template('home.html')'? – vindex
我添加它在watchlistCtrl.js中的Ionic代碼部分 – vindex