我試圖獲得給定字符串address
在models.Listing.address
中的結果列表。我此刻的代碼是:與CharField比較字符串與peewee?
@app.route('/search/<address>')
def search(address):
results = models.Listing.select().where(address << models.Listing.address)
return render_template('search.html', results=results)
例如我可能傳遞39 Main Road
並希望它選擇的記錄,其中39 Main Road
是在給定的信息中的地址域(全地址爲39 Main Road RICHMOND, NSW, Australia
)
但是,我當前的代碼錯誤搭配:TypeError: unsupported operand type(s) for <<: 'str' and 'CharField'
我試圖轉換models.Listing.address
到STR但只是返回unsupported operand type(s) for <<: 'str' and 'str'
我會使用address in models.Listing.address
,但根據the docs和this answer,使用<<
運算符是十分必要的。
而且,我已經使用address.in_(models.Listing.address)
該字符串沒有是不是因爲我不是一個CharField比較一個CharField爲...
財產試過嗎?如果是這樣,我如何比較字符串與CharField?我試着改變CharField爲字符串,但因爲@coleifer在this answer評論說我不能使用in
與peewee:
的Python總是
x in y
返回值強制轉換爲布爾,迫使使用<<
運營商。
在此先感謝!