from flask import Flask, render_template, request, redirect, session, flash, url_for, send_from_directory from models import Jogo, Usuario from dao import JogoDao, UsuarioDao from flask_mysqldb import MySQL import os import time app = Flask(__name__) app.config.from_pyfile('config.py') db = MySQL(app) jogo_dao = JogoDao(db) usuario_dao = UsuarioDao(db) usuario1 = Usuario('lucas', 'Lucas Dirk', '1234') usuario2 = Usuario('Nico', 'Nico Steppat', '7a1') usuario3 = Usuario('flavio', 'Flavio', 'javascript') usuarios = { usuario1.id: usuario1, usuario2.id: usuario2, usuario3.id: usuario3 } jogo1 = Jogo('GTA V ', '/ Ação /', 'XBOX ONE') jogo2 = Jogo('Final Fantasy XII', '/ RPG /', 'PS1') jogo3 = Jogo('Ragnarok', '/ MMORPG /', 'PC') lista = [jogo1, jogo2, jogo3]
from flask import render_template, request, session, flash, redirect, url_for, send_from_directory import time from helpers import recupera_arquivo, deleta_arquivo from jogoteca import app, mongo from models import Jogo from dao import JogoDao, UsuarioDao JOGO_DAO = JogoDao(mongo.db.jogo) USUARIO_DAO = UsuarioDao(mongo.db.usuario) @app.route('/') def index(): jogos = JOGO_DAO.listar() return render_template('lista.html', titulo='Jogos', jogos=jogos) @app.route('/login') def login(): proxima = request.args.get('proxima') return render_template('login.html', titulo='Login', proxima=proxima) @app.route('/autenticar', methods=['POST']) def autenticar(): usuario = USUARIO_DAO.busca_por_id(request.form['id']) if usuario != None and request.form['senha'] == usuario['senha']: session['usuario_logado'] = usuario['id'] flash(usuario['nome'] + ' logou com sucesso!') proxima = request.form['proxima']
import time from flask import render_template, request, session, flash, url_for, send_from_directory from werkzeug.utils import redirect from dao import JogoDao, UsuarioDao from helpers import deleta_arquivo, recupera_imagem from jogoteca import app, database from models import Jogo jogo_dao = JogoDao(database) usuario_dao = UsuarioDao(database) @app.route('/') def index(): lista = jogo_dao.listar() return render_template('lista.html', titulo='Jogos', jogos=lista) @app.route('/novo') def novo(): if 'usuario_logado' not in session or session['usuario_logado'] == None: return redirect(url_for('login', proxima=url_for('novo'))) return render_template('novo.html', titulo='Novo Jogo') @app.route('/criar', methods=[ 'POST', ]) def criar():
from models import Jogo from os import path app = Flask(__name__) UPLOAD_FOLDER = path.join(os.getcwd(), 'uploads') app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER app.secret_key = "calopsita" chave_sessao_usuario = "usuario_logado" conexao = sqlite3.connect("jogoteca.db") jogo_dao = JogoDao(conexao) usuario_dao = UsuarioDao(conexao) @app.route("/") def index(): lista = jogo_dao.lista() return render_template("jogos.html", titulo="Jogos", jogos=lista) @app.route("/login") def login(): return render_template("login.html", titulo="Login")
import os import time import mysql.connector from flask import (Flask, flash, redirect, render_template, request, send_from_directory, session, url_for) from dao import JogoDao, UsuarioDao from models import Jogo, Usuario from jogoteca import app, conn from helpers import deleta_arquivo, recupera_imagem jogo_dao = JogoDao(conn) usuario_dao = UsuarioDao(conn) # definindo uma rota, por padrão GET @app.route('/') def index(): lista = jogo_dao.listar() # Utilizando a função render_template do flask para renderizar paginas html dinamicas(Jinja2) return render_template('lista.html', titulo='Jogos', jogos=lista) @app.route('/novo') def novo(): # validação se o usuario esta logado na sessão if 'usuario_logado' not in session or session['usuario_logado'] is None: # utilizando o url_for para montar urls dinamicamente de acordo com o metodo return redirect(url_for('login', proxima=url_for('novo'))) return render_template('novo.html', titulo='Novo Jogo')
from flask import render_template, request, redirect, session, flash, url_for, send_from_directory from models import Jogo, Usuario from dao import JogoDao, UsuarioDao, ConsoleDao, CategoriaDao from jogoteca import app, db from helpers import recupera_image, deleta_arquivo import time jogoDao = JogoDao(db) usuarioDao = UsuarioDao(db) consoleDao = ConsoleDao(db) categoriaDao = CategoriaDao(db) @app.route('/') def index(): lista = [] for _jogo in jogoDao.lista_jogos: lista.append(Jogo(_jogo['nome'], _jogo['categoria'], _jogo['console'], _jogo['_id'])) return render_template('lista.html', titulo=f'jogos - total: {len(lista)}', jogos=lista) @app.route('/novo') def novo(): if 'usuario_logado' not in session or session['usuario_logado'] is None: return redirect(url_for('login', proxima=url_for('novo'))) consoles = [] for console in consoleDao.lista_consoles: consoles.append({'nome': console['nome']}) categorias = [] for categoria in categoriaDao.lista_categorias: categorias.append({'nome': categoria['nome']})
from flask import render_template, request, redirect, flash, session, url_for, send_from_directory from models import Jogo, Usuario from dao import UsuarioDao, JogoDao from jogateca import app, db from helpers import deleta_arquivo, recupera_imagem import os import time jogo_DAO = JogoDao(db) usuario_DAO = UsuarioDao(db) @app.route('/') def index(): if ('usuario_logado' not in session or session['usuario_logado'] == None): return redirect(url_for('login', proxima='/')) lista = jogo_DAO.listar() return render_template('index.html', jogos=lista, titulo='Lista de jogos') @app.route('/jogo/formulario') def show_form_new_game(): if ('usuario_logado' not in session or session['usuario_logado'] == None): return redirect(url_for('login', proxima='/jogo/formulario')) titulo = "Criar novo jogo" return render_template('formulario_novo_jogo.html', titulo=titulo) @app.route('/jogo/editar/<int:id>')