..... мой Postgres БД класс ......Python 3.5 вставить запись в таблицу Postgres на другой схеме
class User(db.Model):
"""docstring for User"""
__tablename__ = 'user'
user_name = db.Column(db.String(45), primary_key=True)
email = db.Column(db.String(45))
def __init__(self, user_name, email):
super(User, self).__init__()
self.user_name = user_name
self.email = email
..... когда при попытке вставки я получаю сообщение об ошибке
@app.route('/add_user', methods=['POST'])
def add_user():
user = User(user_name = request.form['user_name'], email = request.form['email'])
print(user.user_name, user.email)
db.session.add(user)
db.session.commit()
return render_template('get_address.html')
sqlalchemy.exc.ProgrammingError: (psycopg2.ProgrammingError) relation "user" does not exist LINE 1: INSERT INTO "user" (user_name, email) VALUES ('as', 'sd')^[SQL: 'INSERT INTO "user" (user_name, email) VALUES (%(user_name)s, %(email)s)'] [parameters: {'email': 'sd', 'user_name': 'as'}]
..... есть несколько схем, которые используются ..... выше класс в схеме называется пользователи
Я думаю, что проблема является разрешением имен таблицы: то есть в база данных, где находится tabl e 'пользователи'? Я предположил, что нужно присвоить таблице «пользователи» с именем схемы __tablename__ = 'users.user'
. Это не работает.
... ошибка произведенная:
sqlalchemy.exc.ProgrammingError: (psycopg2.ProgrammingError) relation "users.user" does not exist LINE 1: INSERT INTO "users.user" (user_name, email) VALUES ('po', 'p...^[SQL: 'INSERT INTO "users.user" (user_name, email) VALUES (%(user_name)s, %(email)s)'] [parameters: {'email': 'po', 'user_name': 'po'}]
Я не могу найти на сайте SqlAlchemy.org или где-либо еще какой-либо информации о какой-либо конструкции, которые будут использоваться или как решить эту проблему.
Любые идеи?
Спасибо, это сработало –