Spaces:
Paused
Paused
Commit
·
9d4b413
1
Parent(s):
f3a3e9b
updated
Browse files- backend/models/database.py +6 -11
- backend/models/user.py +2 -2
backend/models/database.py
CHANGED
@@ -1,13 +1,12 @@
|
|
1 |
-
"""
|
2 |
-
Database models for the Codingo application.
|
3 |
-
"""
|
4 |
-
|
5 |
from flask_sqlalchemy import SQLAlchemy
|
6 |
from datetime import datetime
|
7 |
import json
|
8 |
|
9 |
db = SQLAlchemy()
|
10 |
|
|
|
|
|
|
|
11 |
class Job(db.Model):
|
12 |
__tablename__ = 'jobs'
|
13 |
|
@@ -15,7 +14,7 @@ class Job(db.Model):
|
|
15 |
role = db.Column(db.String(100), nullable=False)
|
16 |
description = db.Column(db.Text, nullable=False)
|
17 |
seniority = db.Column(db.String(50), nullable=False)
|
18 |
-
skills = db.Column(db.Text, nullable=False)
|
19 |
company = db.Column(db.String(100), nullable=False)
|
20 |
date_posted = db.Column(db.DateTime, default=datetime.utcnow)
|
21 |
|
@@ -51,16 +50,12 @@ class Application(db.Model):
|
|
51 |
except:
|
52 |
return {}
|
53 |
|
54 |
-
# Initialize the database
|
55 |
def init_db(app):
|
56 |
-
"""Initialize the database with the Flask app."""
|
57 |
db.init_app(app)
|
58 |
-
|
59 |
with app.app_context():
|
60 |
-
# ✅ IMPORT ALL MODELS BEFORE db.create_all()
|
61 |
-
from backend.models.user import User # make sure this line exists
|
62 |
-
from backend.models.database import Job, Application # optional if circular import
|
63 |
db.create_all()
|
|
|
|
|
64 |
|
65 |
# Add sample data if jobs table is empty
|
66 |
if Job.query.count() == 0:
|
|
|
|
|
|
|
|
|
|
|
1 |
from flask_sqlalchemy import SQLAlchemy
|
2 |
from datetime import datetime
|
3 |
import json
|
4 |
|
5 |
db = SQLAlchemy()
|
6 |
|
7 |
+
# ✅ Import User model here, before Job and Application use it
|
8 |
+
from backend.models.user import User
|
9 |
+
|
10 |
class Job(db.Model):
|
11 |
__tablename__ = 'jobs'
|
12 |
|
|
|
14 |
role = db.Column(db.String(100), nullable=False)
|
15 |
description = db.Column(db.Text, nullable=False)
|
16 |
seniority = db.Column(db.String(50), nullable=False)
|
17 |
+
skills = db.Column(db.Text, nullable=False)
|
18 |
company = db.Column(db.String(100), nullable=False)
|
19 |
date_posted = db.Column(db.DateTime, default=datetime.utcnow)
|
20 |
|
|
|
50 |
except:
|
51 |
return {}
|
52 |
|
|
|
53 |
def init_db(app):
|
|
|
54 |
db.init_app(app)
|
|
|
55 |
with app.app_context():
|
|
|
|
|
|
|
56 |
db.create_all()
|
57 |
+
# Add sample data...
|
58 |
+
|
59 |
|
60 |
# Add sample data if jobs table is empty
|
61 |
if Job.query.count() == 0:
|
backend/models/user.py
CHANGED
@@ -1,7 +1,7 @@
|
|
|
|
1 |
from flask_login import UserMixin
|
2 |
from werkzeug.security import generate_password_hash, check_password_hash
|
3 |
-
from backend.models.database import db
|
4 |
-
|
5 |
|
6 |
class User(UserMixin, db.Model):
|
7 |
__tablename__ = 'users'
|
|
|
1 |
+
from flask_sqlalchemy import SQLAlchemy
|
2 |
from flask_login import UserMixin
|
3 |
from werkzeug.security import generate_password_hash, check_password_hash
|
4 |
+
from backend.models.database import db
|
|
|
5 |
|
6 |
class User(UserMixin, db.Model):
|
7 |
__tablename__ = 'users'
|