2016-12-14 42 views
-1

我有在我使用SQLAlchemy的燒瓶中的應用程序中提取。SQLAlchemy的,瓶以及使用filter_by和過濾

我有一個模型:

from sqlalchemy import BigInteger, Column, JSON, Text 
from app import db 

class Table_910(db.Model): 
    __tablename__ = 'table_910' 

    id = db.Column(BigInteger, primary_key=True) 
    did = db.Column(Text) 
    timestamp = db.Column(BigInteger) 
    data = db.Column(JSON) 
    db_timestamp = db.Column(BigInteger) 

    def __repr__(self): 
     return '<1_Data %r, %r>' % (self.did, self.id) 

在我的觀點的一部分,我試圖提取一組基於行沒有和時間戳我只想數據的子集。

from flask import render_template 
from app import app, db, models 

@app.route('/') 
@app.route('/index') 
def index(): 
    rows = models.Table_910.query \ 
     .filter_by(did='357139052424715') \ 
     .filter((db.Table_910.timestamp > 1466846920000) | (db.Table_910.timestamp < 1467017760000)) 

    return render_template('index.html', rows=rows) 

但由於某種原因,我得到:

AttibuteError: 'SQLAlchemy' object has no attribute 'Table_910'. 

有誰知道這背後的原因是什麼?

+0

請解釋爲什麼你認爲我應該得到一個反對票? – Zeliax

回答

1

隨着錯誤消息指出您嘗試SQLAlchemy的對象上訪問Tables_910。但是您的模型在models.py中定義。您需要使用models.Table_910進行查詢。

+0

謝謝。這樣簡單的解決方案!我不相信我沒有嘗試這個第一個O.o – Zeliax