changed from postgres to mysql (mariaDB)

This commit is contained in:
bacalhau 2026-03-03 18:44:17 +00:00
parent a5895e2124
commit 8c1eb7dee8
4 changed files with 32 additions and 26 deletions

View file

@ -1,15 +1,15 @@
version: "3.9"
services:
db:
image: postgres
image: mariadb:latest
container_name: lovedb
restart: always
environment:
POSTGRES_USER: love
POSTGRES_PASSWORD: love
POSTGRES_DB: lovedb
MARIADB_ROOT_PASSWORD: love
MARIADB_DATABASE: lovedb
MARIADB_USER: love
MARIADB_PASSWORD: love
ports:
- "5432:5432"
- "3309:3306"
volumes:
- ./data:/var/lib/postgresql
- ./data:/var/lib/mysql

View file

@ -87,7 +87,7 @@
- **Software used**:
- Flask (backend framework)
- Postgres SQL (Database)
- MySQL (Database)
- SQLAlchemy (ORM)
- python-gnupg (PGP validation)
- Flask-WTF (Forms validation)

4
requirements.txt Normal file
View file

@ -0,0 +1,4 @@
Flask
Flask-SQLAlchemy
SQLAlchemy
PyMySQL

View file

@ -1,40 +1,41 @@
from flask import Flask, render_template
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy import Enum
from sqlalchemy.dialects.postgresql import ARRAY
from datetime import date
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://love:love@localhost/lovedb'
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://love:love@localhost:3309/lovedb'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)
class SexEnum:
male = "male"
female = "female"
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(128), unique=True, nullable=False)
password = db.Column(db.String(128), unique=True, nullable=False)
firstname = db.Column(db.String(128), unique=False, nullable=False)
lastname = db.Column(db.String(128), unique=False, nullable=False)
sex = db.Column(Enum('male', 'female', name="sex_enum"), nullable=False)
username = db.Column(db.String(128), unique=True, nullable=False)
password = db.Column(db.String(128), nullable=False)
firstname = db.Column(db.String(128), nullable=False)
lastname = db.Column(db.String(128), nullable=False)
sex = db.Column(db.Enum('male', 'female'), nullable=False)
date_of_birth = db.Column(db.Date, nullable=False)
profile_picture = db.Column(db.String(200), nullable=False)
pictures = db.Column(ARRAY(db.String), nullable=True)
country = db.Column(db.String(128), unique=False, nullable=False)
city = db.Column(db.String(128), unique=False, nullable=True)
pictures = db.Column(db.JSON, nullable=True)
country = db.Column(db.String(128), nullable=False)
city = db.Column(db.String(128), nullable=True)
height = db.Column(db.Float, nullable=True)
weight = db.Column(db.Integer, nullable=True)
race = db.Column(db.String(20), unique=False, nullable=True)
race = db.Column(db.String(20), nullable=True)
prefered_age_range = db.Column(db.String(20), nullable=True)
likes = db.Column(ARRAY(db.String), nullable=True)
dislikes = db.Column(ARRAY(db.String), nullable=True)
likes = db.Column(db.JSON, nullable=True)
dislikes = db.Column(db.JSON, nullable=True)
xmpp = db.Column(db.String(128), unique=True, nullable=False)
email = db.Column(db.String(128), unique=True, nullable=True)
@ -46,6 +47,7 @@ class User(db.Model):
def home():
return render_template("index.html")
if __name__ == "__main__":
with app.app_context():
db.create_all()