मैं एक पूर्व-मौजूदा पोस्टग्रेज़ डेटाबेस से कनेक्ट करना चाहता हूं जिसमें मेरे ऐप में कोई मॉडल संबद्ध नहीं है। अनजाने में, यह परेशानी साबित कर रहा है जिसमें यह पाइथन और फ्लास्क के साथ मेरा पहला प्रयास है।फ्लास्क, पायथन और पोस्टग्रेस्क्ल का उपयोग कर मैं पूर्व-मौजूदा डेटाबेस से कैसे कनेक्ट कर सकता हूं?
एप्लिकेशन/py कोड है:
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]naws.com: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)
डीईएफ़ मुख्य() इतना है कि ज्यादा मैं प्राप्त कर ली है काम करता है।
दृश्य (base.html) में हमने:
{% for user in myusers %}
<div><p>{{ user.first_name }} </b></p></div>
{% endfor %}
जब मैं base.html पृष्ठ पर जाने के लगातार त्रुटि NameError: global name 'users' is not defined
क्या है, शायद बहुत सी बातें की है, मैं क्या कर यहाँ गलत है? सभी मदद की सराहना की। धन्यवाद।
धन्यवाद मैं इसे एक शॉट दे देंगे और उसके बाद अजगर models.py चलाएँ: app.py फ़ाइल (आप उपयोगकर्ता वर्ग कि sqlacodgen द्वारा उत्पन्न की गई के नाम जांच करने की आवश्यकता) के शीर्ष? – user1903663
धन्यवाद जैसा कि आपने सुझाव दिया है, यह एक सुंदर फ़ाइल का उत्पादन करता है। अब मैं क्या करू? इस तरह के एक डमी होने के लिए खेद है। तो मैं अपनी ऐप फ़ाइल में आयात करता हूं या पाइथन रन मॉडल करता हूं, पाई? या कुछ और ...? – user1903663
अद्यतन उत्तर देखें। – pjcunningham