Voglio collegarmi a un database postgres preesistente che non ha modelli associati con esso nella mia app. Forse non sorprende, questo si sta dimostrando fastidioso aggiunto al quale questo è il mio primo tentativo con Python e Flask.utilizzando Flask, python e postgresql come posso connettermi a un database preesistente?
Il codice/PY app è:
import os
from flask import Flask
from flask import render_template
from flask.ext.sqlalchemy import SQLAlchemy
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'postgres://blah:[email protected]:5432/mydb'
db = SQLAlchemy(app)
db.create_all()
db.session.commit()
@app.route("/")
def main():
return render_template('index.html')
@app.route('/base')
def base():
myusers = users.all()
return render_template('base.html')
if __name__ == '__main__':
app.run(debug=True)
il def main() funziona in modo tale che tanto mi hanno raggiunto.
Nella vista (base.html) abbiamo:
{% for user in myusers %}
<div><p>{{ user.first_name }} </b></p></div>
{% endfor %}
Quando vado alla pagina di base.html l'errore persistente è NameError: global name 'users' is not defined
Che, di molte cose, probabilmente, ci faccio sbagliato qui? Tutto l'aiuto è apprezzato. Grazie.
grazie farò dare un colpo e quindi eseguire python models.py? – user1903663
grazie ha prodotto un bellissimo file come da lei suggerito. Cosa faccio ora? Mi dispiace essere un vero maniaco. Quindi importare nel mio file di app o fare modelli Python, py? O qualcos'altro ...? – user1903663
Vedere la risposta aggiornata. – pjcunningham