Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

379
Visualizações
Peewee y postgres en heroku, no se puede crear una tabla

Probé sin la base de datos, mi aplicación funciona muy bien, pero con peewee y postgres, no es capaz de crear ninguna tabla.

mi aplicación

Probé diferentes métodos publicados en línea, pero no funciona, cualquiera que haya usado peewee en heroku, por favor, ayuda.

Mi modelo.py

 if os.environ.get('DATABASE_URL'): DATABASE_URL = os.environ.get('DATABASE_URL') db = urlparse(DATABASE_URL) user = db.username password = db.password path = db.path[1:] host = db.hostname port = db.port database = PostgresqlDatabase(path, user=user, password=password, host=host, port=port) else: database = PostgresqlDatabase('heroku') class BaseModel(Model): class Meta: database = database class User(BaseModel): name = CharField() email = CharField(null=False, unique=True)

Después de mover la tabla de creación de la instrucción if a la tabla de funciones de bienvenida, se crea.

 @app.route('/') def welcome(): call('printenv') a = 'Default' b = 'Default' if os.environ.get('DATABASE_URL'): a = os.environ.get('DATABASE_URL') if os.environ.get('HEROKU'): b = os.environ.get('HEROKU') create_model_tables([Users], fail_silently=True) Users.insert(name='John', email='Doe').execute() return render_template('index.html', a=a, b=b) if __name__ == '__main__': app.run(port=5000, debug=True)
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

"usuario" es una tabla reservada; intente:

 class User(Model): ... class Meta: db_table = 'users'
over 4 years ago · Santiago Trujillo Relatório

0

from playhouse.db_url import connect import settings local_url = 'postgresql://{}:{}@localhost:5432/{}'.format(settings.DB_USER, settings.DB_PASS, settings.DB_NAME) database = connect(os.environ.get('DATABASE_URL') or local_url) class BaseModel(Model): class Meta: database = database

Úselo de esta manera, es fácil y hay muy pocas posibilidades de equivocarse.

Y debe crear una tabla antes if __name__ == '__main__: , esta declaración, porque en heroku proporciona configuraciones tales que, cualquier cosa debajo de eso no funcionará.

Como el mío uswgi.ini

 [uwsgi] http-socket = :$(PORT) master = true die-on-term = true module = app:app memory-report = true

module = app:app significa ejecutar la aplicación desde app.py no ejecutar app.py

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda