示例#1
0
def delete():
    email = g.current_user.email
    _security_datastore = LocalProxy(
        lambda: current_app.extensions['security'].datastore)
    _security_datastore.delete_user(g.current_user)
    _security_datastore.commit()
    return jsonify(dict(user=email, message='Successfully deleted user!'))
示例#2
0
def delete():
    email = g.current_user.email
    _security_datastore = LocalProxy(lambda:
            current_app.extensions['security'].datastore)
    _security_datastore.delete_user(g.current_user)
    _security_datastore.commit()
    return jsonify(dict(user=email, message='Successfully deleted user!'))
示例#3
0
def test_save_patron(get_uuid_pid_by_email, reindex, record_indexer, url_for1,
                     url_for2, send_email, confirm_user, app, db,
                     minimal_patron_only_record):
    """Test save patron"""

    # Convenient references
    security = LocalProxy(lambda: app.extensions['security'])
    datastore = LocalProxy(lambda: security.datastore)
    datastore.create_role(name='patrons')

    # hack the return value
    get_uuid_pid_by_email.return_value = None, None

    email = '*****@*****.**'
    u1 = datastore.create_user(email=email,
                               active=False,
                               password=hash_password('aafaf4as5fa'))
    datastore.commit()
    u2 = datastore.find_user(email=email)
    assert u1 == u2
    assert 1 == User.query.filter_by(email=email).count()
    email = minimal_patron_only_record.get('email')
    assert datastore.get_user(email) is None

    save_patron(minimal_patron_only_record, Patron.provider.pid_type,
                Patron.fetcher, Patron.minter, record_indexer, Patron, None)
    email = minimal_patron_only_record.get('email')

    # Verify that user exists in app's datastore
    user_ds = datastore.get_user(email)
    assert user_ds
    assert user_ds.email == email
示例#4
0
def delete_account():
    delete_user_account_form = DeleteUserAccountForm()
    if delete_user_account_form.validate_on_submit():
        user_temp = User.query.get(current_user.id)
        logout_user()
        _security_datastore = LocalProxy(lambda: current_app.extensions['security'].datastore)
        _security_datastore.delete_user(user_temp)
        _security_datastore.commit()
    return redirect(url_for('dashboard.index'))
示例#5
0
def account_edit_own_password():
    form = forms.MembersEditPassword()
    _security = LocalProxy(lambda: current_app.extensions['security'])
    _datastore = LocalProxy(lambda: _security.datastore)
    if form.validate_on_submit():
        update_password(current_user, request.form['password'])
        _datastore.commit()
        flash("your password was updated", "confirmation")
        return redirect(request.url)
    return render_template('my_account/edit_password.html', form=form)
示例#6
0
def account_edit_own_password():
    form = forms.MembersEditPassword()
    _security = LocalProxy(lambda: current_app.extensions['security'])
    _datastore = LocalProxy(lambda: _security.datastore)
    if form.validate_on_submit():
        update_password(current_user, request.form['password'])
        _datastore.commit()
        flash("your password was updated", "confirmation")
        return redirect(request.url)
    return render_template('my_account/edit_password.html', form=form)
示例#7
0
def delete_account():
    delete_user_account_form = DeleteUserAccountForm()
    if delete_user_account_form.validate_on_submit():
        user_temp = User.query.get(current_user.id)
        logout_user()
        _security_datastore = LocalProxy(
            lambda: current_app.extensions['security'].datastore)
        _security_datastore.delete_user(user_temp)
        _security_datastore.commit()
    return redirect(url_for('dashboard.index'))
示例#8
0
 def delete_by_email(cls, email, deluser=False, delindex=False):
     """Delete user by email."""
     patron = cls.get_patron_by_email(email)
     if patron:
         patron.delete(delindex)
     datastore = LocalProxy(
         lambda: current_app.extensions['security'].datastore)
     user = datastore.find_user(email=email)
     if user:
         datastore.delete_user(user)
         datastore.commit()
parent = proxy_session.query(Parent).all()[0]
print(parent.name)
print('hybrid_property: ', parent.children_count)
print(parent.children.count())

children = proxy_session.query(Child).all()
child = children[0]
print(child.name)
print(child.parents)
print(child.teachers)

child = children[-1]
print(child.teachers)
proxy_session.delete(child)
proxy_session.commit()

parent = proxy_session.query(Parent).all()[0]
print(parent.children.count())

# class User(Base):
#     __tablename__ = 'user'
#     id = Column(Integer, primary_key=True, autoincrement=True)
#     name = Column(String(64))
#     password = Column(String(128))
# Base.metadata.create_all(bind=engine)
# user = User(name='wong', password='******')
# proxy_session.add(user)
# proxy_session.commit()
# rvs = proxy_session.query(User).all()
# print(rvs)
def insert_record(query, args=()):
    local_proxy_db = LocalProxy(get_db)
    local_proxy_db.execute(query, args)
    local_proxy_db.commit()
    return