from flask import Flask, jsonify, request, current_app

from cashman.model.expense import Expense, ExpenseSchema
from cashman.model.income import Income, IncomeSchema
from cashman.model.transaction_type import TransactionType

import socket
import json
import psycopg2 as pg
import pickle
import traceback

app = Flask(__name__)

transactions = [
    Income('Salary', 5000),
    Income('Dividends', 2000),
    Income('Venmo', 800),
    Expense('pizza', 50),
    Expense('Rock Concert', 100)
]

# try:
conn = pg.connect(dbname='postgres', user='******', password='******', host='192.168.99.102')
cur = conn.cursor()

# THESE LINES BELOW HAVE TO BE ADDED IF THE DATABASE IS BEING INITIALIZED
# SOME COMBINATION OF "CREATE IF NOT EXISTS, AND INSERT"

    # cur.execute("ROLLBACK")
    # conn.commit()
Exemple #2
0
from flask import Flask, jsonify, request

from cashman.model.expense import Expense, ExpenseSchema
from cashman.model.income import Income, IncomeSchema
from cashman.model.transaction_type import TransactionType


app = Flask(__name__)


transactions = [
    Income('Salary', 5000),
    Income('Dividends', 200),
    Expense('pizza', 50),
    Expense('Rock Concert', 100)
]


@app.route('/incomes'
def get_incomes():
    """
    1. manyってなに?
    2. filterの挙動を忘れた
    """
    schema = IncomeSchema(many=True)
    incomes = schema.dump(
        filter(lambda t: t.type == TransactionType.INCOME, transactions )
    )

    return jsonify(incomes.data)
Exemple #3
0
from flask import Flask, jsonify, request

from cashman.model.expense import Expense, ExpenseSchema
from cashman.model.income import Income, IncomeSchema
from cashman.model.transaction_type import TransactionType

app = Flask(__name__)

transactions = [
    Income(1, 'Salary', 5000),
    Income(2, 'Dividends', 200),
    Expense(1, 'pizza', 50),
    Expense(2, 'Rock Concert', 100)
]


@app.route('/incomes')  #GET receitas
def get_incomes():
    schema = IncomeSchema(many=True)
    incomes = schema.dump(
        filter(lambda t: t.type == TransactionType.INCOME, transactions))
    return jsonify(incomes.data)


@app.route('/incomes', methods=['POST'])  #POST receitas
def add_income():
    income = IncomeSchema().load(request.get_json())  #JSON -> Dados
    transactions.append(income.data)  #Insere dados
    return "", 204  # Codigo de Status HTTP 204 - The server has successfully fulfilled the request