database - python sqlalchemy not filling in the row -
hello new sqlalchemy , have problems inserting data in column.
import sqlalchemy sqlalchemy import create_engine sqlalchemy.ext.declarative import declarative_base sqlalchemy import column, integer, string, foreignkey, boolean sqlalchemy.orm import relationship, backref sqlalchemy.orm import sessionmaker engine = create_engine('sqlite:///test.db') base = declarative_base() class users(base): __tablename__ = 'users' id = column(integer, primary_key=true) name = column(string, unique=true) password = column(string) email = column(string) def __init__(self, name, password, email): self._name = name self._password = password self._email = email base.metadata.create_all(engine) session = sessionmaker(bind=engine) session.configure(bind=engine) session = session() dm_user = users("dungeonmaster", "123", "email") print dm_user.name print dm_user.password print dm_user.email session.add(dm_user) our_user = session.query(users).filter_by(name='dungeonmaster').first() session.commit() i used sqlite studio see if data added, , see new row being made (with new id.) data name, password , email not inserted.
with print see before try add goes wrong, don't know what. please me out bit
( dm_user = users("dungeonmaster", "123", "email") tried single quotes (helped me before using sqlalchemy, no difference here)
your init method not initialize persistent columns. try instead (remove underscores):
def __init__(self, name, password, email): self.name = name self.password = password self.email = email
Comments
Post a Comment