def edit_account(account_id): account = Account.query.filter( Account.id == account_id, Account.user_id == current_user.id).first_or_404() account_schema = Account.from_json(json.loads( request.data.decode('utf-8')), partial=True) if account_schema.errors: return {'errors': account_schema.errors}, 400 if 'currency_id' in account_schema.data: currency = GroupCurrency.query.filter( GroupCurrency.id == account_schema.data['currency_id']).first() if not currency: return { 'errors': { 'currency': 'Group currency with this id does not exist' } }, 400 for field, value in account_schema.data.items(): if hasattr(account, field): setattr(account, field, value) db.session.commit() return account, 200
def edit_account(account_id): account = Account.query.filter( Account.id == account_id, Account.user_id == current_user.id ).first_or_404() account_schema = Account.from_json(json.loads(request.data.decode('utf-8')), partial=True) if account_schema.errors: return {'errors': account_schema.errors}, 400 if 'currency_id' in account_schema.data: currency = GroupCurrency.query.filter( GroupCurrency.id == account_schema.data['currency_id'] ).first() if not currency: return {'errors': {'currency': 'Group currency with this id does not exist'}}, 400 for field, value in account_schema.data.items(): if hasattr(account, field): setattr(account, field, value) db.session.commit() return account, 200
def add_account(): account_schema = Account.from_json(json.loads(request.data.decode('utf-8'))) if account_schema.errors: return {'errors': account_schema.errors}, 400 currency = GroupCurrency.query.filter( GroupCurrency.id == account_schema.data['currency_id'] ).first() if not currency: return {'errors': {'currency': 'Group currency with this id does not exist'}}, 400 account = Account(**account_schema.data) account.user = current_user db.session.add(account) db.session.commit() return account, 201
def add_account(): account_schema = Account.from_json(json.loads( request.data.decode('utf-8'))) if account_schema.errors: return {'errors': account_schema.errors}, 400 currency = GroupCurrency.query.filter( GroupCurrency.id == account_schema.data['currency_id']).first() if not currency: return { 'errors': { 'currency': 'Group currency with this id does not exist' } }, 400 account = Account(**account_schema.data) account.user = current_user db.session.add(account) db.session.commit() return account, 201