Проблема с вывод значений в Flask-admin
Всем привет, я делаю проект, используя Flask и все прочие к нему модули. При использовании Flask-Admin, когда я создаю новую запись в БД, вместо имени пользователя и названия урока, стоит их id.(представлено на рисунке 1)
Рисунок 1
Можно ли что то сделать, чтобы появилось имя пользователя и название урока, а не их Id? Ниже, предcтавлен код, где создается БД и таблицы
from flask_sqlalchemy import SQLAlchemy
from flask_login import UserMixin
from werkzeug.security import generate_password_hash, check_password_hash
from flask_login import LoginManager
login = LoginManager()
db = SQLAlchemy()
class User(UserMixin, db.Model):
__tablename__ = 'users'
id = db.Column(db.Integer, primary_key=True)
login = db.Column(db.String(50))
password_hash = db.Column(db.String(500), nullable=False)
name = db.Column(db.String(50))
def set_password(self,password):
self.password_hash = generate_password_hash(password)
def check_password(self,password):
return check_password_hash(self.password_hash,password)
class Lessons(db.Model):
__tablename__ = 'lessons'
id = db.Column(db.Integer, primary_key=True)
nameLessons = db.Column(db.String(50))
class Statement(db.Model):
__tablename__ = 'statement'
id = db.Column(db.Integer, primary_key=True)
fio_name = db.Column(db.String(70), db.ForeignKey('users.name'), nullable=False)
fio = db.relationship('User', backref=db.backref('fio', lazy='dynamic'))
lesson_name = db.Column(db.String(70), db.ForeignKey('lessons.nameLessons'), nullable=False)
lesson_title = db.relationship('Lessons', backref=db.backref('lessons', lazy='dynamic'))
grades = db.Column(db.String(1))
@login.user_loader
def load_user(id):
return User.query.get(int(id))
Ответы (1 шт):
Автор решения: GeR
→ Ссылка
Нашел способ: надо было просто добавить
__tablename__ = "lessons"
id = db.Column(db.Integer, primary_key=True)
nameLessons = db.Column(db.String(50))
def __repr__(self):
return (self.nameLessons)
class Statement(db.Model):
__tablename__ = "statement"
id = db.Column(db.Integer, primary_key=True)
fio_name = db.Column(db.String(70), db.ForeignKey("users.name"), nullable=False)
fio = db.relationship("User", backref="fio")
lesson_name = db.Column(db.String(70), db.ForeignKey("lessons.nameLessons"), nullable=False)
lesson_title = db.relationship("Lessons", backref=db.backref("lessons", lazy="dynamic"))
grades = db.Column(db.String(1))
def __repr__(self):
return (self.fio_name)д`