db initの実行中にレコードをテーブルに追加する
私のアプリケーションでは、フラスコ、sqlalchemy、sqlite、およびpythonを使用しています。データベースを作成するためにdb initを実行するとき、デフォルトの値のセットをデータベースに追加する必要があります。レコードをテーブルに追加するためにこれら2つのことを試しました。1つの方法は「イベント」を使用することです。 from sqlalchemy.event import listen from sqlalchemy import event, DDL @event.listens_for(studentStatus.__table__, 'after_create') def insert_initial_values(*args, **kwargs): db.session.add(studentStatus(status_name='Waiting on admission')) db.session.add(studentStatus(status_name='Waiting on student')) db.session.add(studentStatus(status_name='Interaction Initiated')) db.session.commit() 私が走るとき python manage_db.py db init, python manage_db.py db migrate, python manage_db.py db upgrade 問題はありませんでしたが、レコードが作成されていません。 私が試した別の方法は、私が含めたmodels.pyです record_for_student_status = studentStatus(status_name="Waiting on student") db.session.add(record_for_student_status) db.session.commit() print(record_for_student_status) クラスモデルコード: class …