()는

2016-12-18 5 views
1

나는 나의 SQLAlchemy의에서 CREATE_ALL 호출이 ()는

@app.before_first_request 
def create_tables(): 
    db.create_all() 

을 app.py 그리고 user.py 모델 파일에 기본 사용자를 정의해야 :

class UserModel(db.Model): 
    __tablename__ = 'users' 

    id = db.Column(db.Integer, primary_key = True) 
    username = db.Column(db.String(80)) 
    password = db.Column(db.String(80)) 

    def __init__(self, username, password): 
     self.username = username 
     self.password = password 

나는이 예에서는 일부 기본 사용자, 몇 가지 기본 데이터를 미리 채우려 :

admin = self('admin', 'test') 
    guest = self('guest', 'test') 

I 입력들을 수 app.py에서 어떻게 든? 또는 다른 create_data.py 유형 파일에 있습니까?

+0

사용을 호출 할 수 있습니다를'(db.session.add) '또는 'db.session.add_all ([admin, guest])'가 작동합니다. http://flask-sqlalchemy.pocoo.org/2.1/quickstart/#a-minimal-application – Deusdeorum

답변

1

당신은이 같은 example_data.py 파일을 만들 수 있습니다

from user import UserModel 

def db_load_example_data(app, db): 
    admin = UserModel('admin', 'test') 
    guest = UserModel('guest', 'test') 
    with app.app_context(): 
     db.session.add(admin) 
     db.session.add(guest) 
     db.commit() 

다음 시작 스크립트에이

from example_data import db_load_example_data 

db_load_example_data(app, db)