Я работаю с Flask/Mongoengine-MongoDB для своего последнего веб-приложения.
Я знаком с Pymongo, но я новичок в средствах сопоставления объектов и документов, таких как Mongoengine.
У меня уже есть база данных и коллекция, и я просто хочу запросить ее и вернуть соответствующий объект. Вот посмотрите на мои models.py...
from app import db
# ----------------------------------------
# Taking steps towards a working backend.
# ----------------------------------------
class Property(db.Document):
# Document variables.
total_annual_rates = db.IntField()
land_value = db.IntField()
land_area = db.IntField()
assessment_number = db.StringField(max_length=255, required=True)
address = db.StringField(max_length=255, required=True)
current_capital_value = db.IntField
valuation_as_at_date = db.StringField(max_length=255, required=True)
legal_description = db.StringField(max_length=255, required=True)
capital_value = db.IntField()
annual_value = db.StringField(max_length=255, required=True)
certificate_of_title_number = db.StringField(max_length=255, required=True)
def __repr__(self):
return address
def get_property_from_db(self, query_string):
if not query_string:
raise ValueError()
# Ultra-simple search for the moment.
properties_found = Property.objects(address=query_string)
return properties_found[0]
Я получаю следующую ошибку: IndexError: no such item for Cursor instance
В этом есть смысл, поскольку объект не указывает ни на какую коллекцию. Несмотря на то, что я некоторое время просматривал документы, я до сих пор понятия не имею, как это сделать.
Кто-нибудь из вас знает, как правильно связать мой класс Property
с моей уже существующей базой данных и коллекцией?