from flask import Flask from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = ( 'mysql+mysqlconnector://vagrant@localhost/testdb') app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False db = SQLAlchemy(app) class Country(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(80), unique=True, nullable=False) def __repr__(self): return '' % self.name class City(db.Model): id = db.Column(db.Integer, primary_key=True) zip_code = db.Column(db.Integer, unique=True, nullable=False) name = db.Column(db.String(80), unique=True, nullable=False) country_id = db.Column(db.Integer, db.ForeignKey('country.id'), nullable=False) country = db.relationship('City', backref=db.backref('countrys', lazy=True)) def __repr__(self): return '' % self.name class User(db.Model): id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(80), unique=True, nullable=False) email = db.Column(db.String(120), unique=True, nullable=False) first_name = db.Column(db.String(120), nullable=False) last_name = db.Column(db.String(120), nullable=False) middle_name = db.Column(db.String(120), nullable=False) street_name = db.Column(db.String(120), nullable=False) telephonenumber = db.Column(db.String(120), nullable=False) mobile_number = db.Column(db.String(120), nullable=False) hobby = db.Column(db.String(120), nullable=False) salutation = db.Column(db.String(120), nullable=False) gender = db.Column(db.String(120), nullable=False) city_id = db.Column(db.Integer, db.ForeignKey('city.id'), nullable=False) city = db.relationship('City', backref=db.backref('users', lazy=True)) def __repr__(self): return '' % self.username