我正在尝试使用sqlite3并创建数据库,但是我无法入门.我去终端并输入sqlite3开始.我得到以下提示:
sqlite>
Run Code Online (Sandbox Code Playgroud)
我安装了sqlAcademy并且正在尝试完成本教程,但是有以下示例:
>>> import sqlalchemy
>>> sqlalchemy.__version__
0.7.0
Run Code Online (Sandbox Code Playgroud)
他们似乎在终端中输入,但我的代码显示错误:
sqlite> import sqlalchemy;
Error: near "import": syntax error
Run Code Online (Sandbox Code Playgroud)
有没有我应该在终端中使用的包装器,所以我可以输入Python?我是否需要单独编写,编译和运行所有示例,还是有更简单的方法?
我知道这听起来很模糊,但我认为我做的事情非常明显错误.太新了,不知道它是什么.
我想在 SQLAlchemy 中执行这个查询
SELECT customer_name FROM Orders
WHERE order_id = 101 AND order_date BETWEEN '2018-07-01' AND '2018-07-31';
Run Code Online (Sandbox Code Playgroud)
这是我的模型:
class Orders(db.Model):
id = db.Column(db.Integer,primary_key=True)
order_id = db.Column(db.Integer,nullable=False)
customer_name = db.Column(db.String(100),nullable=False)
order_date = db.Column(db.String(100),nullable=False)
remarks = db.Column(db.String(100),nullable=False)
Run Code Online (Sandbox Code Playgroud) 我正在使用 Python 将数据从 Oracle 表导出到 Pandas DataFrame,然后导出到 CSV 文件。
但我收到此错误:
AttributeError: 'generator' object has no attribute 'to_csv'
Run Code Online (Sandbox Code Playgroud)
我无法找出我的代码的问题出在哪里:
import cx_Oracle
import csv
import pandas as pd
import sqlalchemy
from sqlalchemy import create_engine
DATABASE = "MY database"
SCHEMA = "MY USER"
PASSWORD = "MY PASS"
connstr = "oracle://{}:{}@{}".format(SCHEMA, PASSWORD, DATABASE)
conn = sqlalchemy.create_engine(connstr)
result=pd.read_sql('My QUERY' , con=conn, chunksize=10000)
result.to_csv("test",sep=',',chunksize=10000)
Run Code Online (Sandbox Code Playgroud) 我正在修改cookiecutter Flask app.这使用flask_login usermixin.
我有一个方法寄存器,其中包含:
from myflaskapp.models.user import User
if form.validate_on_submit()
new_user = User.query.filter_by(email=posted_email).first
if new_user:
if new_user.confirmed:
Run Code Online (Sandbox Code Playgroud)
posted_email不在表中,所以我认为会返回None值.为什么这不起作用?
myflaskapp.models.user:
from flask.ext.login import UserMixin
from myflaskapp.extensions import db, bcrypt
from myflaskapp.database import (
Column,
Model,
ReferenceCol,
relationship,
SurrogatePK,
)
class User(UserMixin, SurrogatePK, Model):
__tablename__ = 'users'
username = Column(db.String(80), nullable=True)
email = Column(db.String(80), nullable=False)
#: The hashed password
password = Column(db.String(128), nullable=True)
created_at = Column(db.DateTime, nullable=False, default=dt.datetime.utcnow)
first_name = Column(db.String(30), nullable=True)
last_name = Column(db.String(30), nullable=True)
active = Column(db.Boolean(), default=False) …
Run Code Online (Sandbox Code Playgroud) 我完成了教程点上的所有内容(只是复制和粘贴),但当我尝试添加学生条目时,即"添加学生",它给出了
错误请求浏览器(或代理)发送了此服务器无法理解的请求.
请告知本教程是否有任何问题.
它在def new()中的这一行失败了,在app.py中:
student = students(request.form['name'], request.form['city'], request.form['addr'], request.form['pin'])
Run Code Online (Sandbox Code Playgroud)
无论谁将其标记下来.请注意,这是一个充满拼写错误和错误缩进的教程.我只是一名学生.关闭它,我什么都不会学到.
参考:http://www.tutorialspoint.com/flask/flask_sqlalchemy.htm
from flask import Flask, request, flash, url_for, redirect, render_template
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///students.sqlite3'
app.config['SECRET_KEY'] = "random string"
db = SQLAlchemy(app)
class Students(db.Model):
id = db.Column('student_id', db.Integer, primary_key = True)
name = db.Column(db.String(100))
city = db.Column(db.String(50))
addr = db.Column(db.String(200))
pin = db.Column(db.String(10))
def __init__(self, name, city, addr,pin):
self.name = name
self.city = city
self.addr = …
Run Code Online (Sandbox Code Playgroud) 因为我是 Python 和 Flask 的新手,所以我被困住了。目前我正在学习一个名为 Learning Flask 的视频课程。我已经创建了一个模型,但是当我尝试启动应用程序时出现错误
from flask_sqlalchemy import SQLAlchemy
from werkzeug import generate_password_hash, check_password_hash
db = SQLAlchemy()
class User(db.Model):
__tablename__ = 'users'
uid = db.Column(db.Integer, primary_key =True)
firstname = db.Column(db.string(100))
lastname = db.Column(db.string(100))
email = db.Column(db.String(120), unique=True)
pwdhash = db.Column(db.String(54))
def __init__(self, firstname, lastname, email, password):
self.firstname = firstname.title()
self.lastname = lastname.title()
self.email = email.lower()
self.set_password(password)
def set_password(self, password):
self.pwdhash = generate_password_hash(password)
def check_password(self, password):
return check_password_hash(self.pwdhash, password)
Run Code Online (Sandbox Code Playgroud)
(venv)smurf@tesla:~/WorkInProgress/learning-flask$ python routes.py
Traceback (most recent call last):
File …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Flask 制作一个多租户应用程序,我一直在遵循本指南,我正在使用 Postgres sql 作为数据库:
https://medium.com/@smirnov.am/multitenancy-with-flask-6f5375a34f55
所以我的困惑点是,当我尝试重定向到指定的 url 时,我不断收到内部服务器错误,当我查看日志时,这就是我得到的:
TypeError: index() got an unexpected keyword argument 'organization_name'
在遵循指南时,我将执行与他所做的完全相同的步骤,但我无法获得最终输出以表明它确实有效。
这就是我构建 app.route 的方式
@app.route("/<organization_name>/users")
def index(organization__name):
organization_session = get_organization_session(organization__name)
if not organization_session:
print(404)
users = organization_session.query(Organization).all()
return jsonify({organization__name: [i.username for i in users]})
Run Code Online (Sandbox Code Playgroud)
这就是我设置多租户设置的方式:
DB_URI = my postgres uri
# Manages the the multiple dbs for the organization
@simple_cache
def get_known_organizations():
organizations = Organization.query.all()
return [o.name for o in organizations]
def prepare_bind(organization):
if organization not in current_app.config['SQLALCHEMY_BINDS']:
current_app.config['SQLALCHEMY_BINDS'][organization] = DB_URI.format(organization)
return …
Run Code Online (Sandbox Code Playgroud) 我有一个 SQLAlchemy 查询,如下所示:
query = db.session.query(
Place.name,
Place.population,
).filter(Place.population==8000)
Run Code Online (Sandbox Code Playgroud)
但是当我打印查询时,结果如下:
SELECT place.name AS place_name, place.population AS place_population
FROM place
WHERE place.population = %(population_1)s
Run Code Online (Sandbox Code Playgroud)
我不明白为什么它不断用 替换我的过滤条件%(population_1)s
。这个查询是 Flask 应用程序的一部分,也许有什么我不明白的地方?
编辑:更改标题以更描述实际问题。
我正在尝试制作一个 Flask Web 应用程序,该应用程序从用户那里获取输入并将其保存到数据库 (sqlite3) 中。我为“航班”表定义了一个类 Flight 来注册客户将通过的航班。还有一个不同的“乘客”表来存储乘客的名字。
================================================== ==================
我在 Windows 7 操作系统上的 Visual Studio 2019 中运行代码。
================================================== ==================
这是我的模型课。
import os
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
db=SQLAlchemy()
class Flight(db.Model):
"""Flight class"""
__tablename__ = "flights"
id = db.Column(db.Integer, pimary_key=True)
origin = db.Column(db.String, nullable=False)
destination = db.Column(db.String, nullable=False)
duration = db.Column(db.Integer, nullable=False)
class Passenger(db.Model):
"""Passenger class"""
__tablename__ = "passengers"
id = db.Column(db.Integer, pimary_key=True)
name = …
Run Code Online (Sandbox Code Playgroud) python ×9
sqlalchemy ×9
flask ×4
sqlite ×2
oracle ×1
pandas ×1
postgresql ×1
python-3.x ×1
terminal ×1