Ошибка получения документа из коллекции MongoDB - PullRequest
0 голосов
/ 14 октября 2018

Я изучаю фреймворк Flask и создаю блог-сайт, используя MongoDB в качестве моей базы данных.Я вполне могу сохранить свои данные в коллекции в виде документа, но у меня возникают проблемы с извлечением сохраненного документа из моей коллекции.

Я использую API-интерфейс Azure Cosmos DB MongoDB для своей коллекции.Пожалуйста, найдите необходимые скриншоты ниже.

Определение класса документа

class UserDocument(Document, UserMixin):

username = StringField(min_length=2,max_length=100,required=True,unique=True)
email = EmailField(required=True,unique=True)
password = StringField(max_length=60,required=True,unique=True)
remember = BooleanField(required=True,default=True,unique=True)

meta = { 'collection' : 'UserDocument'}

Регистрация маршрута - Сохранение моего документа

@app.route("/register",methods= ["POST","GET"] )
def register():
    form = RegistrationForm()
    if form.validate_on_submit():
        if request.method == "POST":
            user = UserDocument()
            user.username = form.username.data
            user.email = form.email.data
            user.password = bcrypt.generate_password_hash(form.password.data).decode('utf-8')
            user.save()        
        flash(form.password.data,"Info")
    return render_template('register.html',form=form,title='Register')

Документация MongoEngine - для получения enter image description here

Ошибка при получении документа

@app.route("/login",methods= ["POST","GET"] )
def login():
    form = LoginForm()
    if form.validate_on_submit():
        if request.method == "POST":
            # table = client.db.MongoEngineDB
            # user = table.UserDocument.find_one({'email':form.email.data})
            user = UserDocument.objects(username=form.email.data)
            flash(user, "Info")
    return render_template('login.html',form=form,title='Login')

Я не являюсьКонечно, где я все перепутал, я потратил много времени, пытаясь выяснить сам, просматривая много содержимого, но не в состоянии выяснить причину.Не уверен, имеет ли это отношение к отсутствующим модулям или определению класса «UserDocument».

В документации «flask-mongoengine" также мало информации.

...