feat: implement backend with Flask for game collection management using SQLite database
This commit is contained in:
41
game_collection/app.py
Normal file
41
game_collection/app.py
Normal file
@ -0,0 +1,41 @@
|
||||
from flask import Flask, request, jsonify
|
||||
from flask_sqlalchemy import SQLAlchemy
|
||||
from database import init_db
|
||||
from models import db, Game
|
||||
|
||||
app = Flask(__name__)
|
||||
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///games.db'
|
||||
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
|
||||
db.init_app(app)
|
||||
|
||||
with app.app_context():
|
||||
init_db()
|
||||
|
||||
@app.route('/games', methods=['POST'])
|
||||
def add_game():
|
||||
data = request.json
|
||||
new_game = Game(
|
||||
image=data['image'],
|
||||
title=data['title'],
|
||||
date=data['date'],
|
||||
buyer=data['buyer'],
|
||||
owned=data['owned']
|
||||
)
|
||||
db.session.add(new_game)
|
||||
db.session.commit()
|
||||
return jsonify({'message': 'Game added!'}), 201
|
||||
|
||||
@app.route('/games', methods=['GET'])
|
||||
def get_games():
|
||||
games = Game.query.all()
|
||||
return jsonify([{
|
||||
'id': game.id,
|
||||
'image': game.image,
|
||||
'title': game.title,
|
||||
'date': game.date,
|
||||
'buyer': game.buyer,
|
||||
'owned': game.owned
|
||||
} for game in games])
|
||||
|
||||
if __name__ == '__main__':
|
||||
app.run(debug=True)
|
Reference in New Issue
Block a user