小编jet*_*com的帖子

Flask - generate_password_hash不是常量输出

在烧瓶中,

当我尝试werkzeug.security.generate_password_hash("Same password")多次运行时,每次输出都不同?

我究竟做错了什么.为什么不恒定?

我猜它与设置盐有关?

python password-encryption flask

18
推荐指数
1
解决办法
1万
查看次数

如何链接到不在烧瓶中的静态文件夹中的图像

在烧瓶中,如何提供不在静态文件夹中的图像?

我目前将用户上传的照片保存在flask文件夹之外的目录中(打开openshift,当前保存在数据文件夹下的图像,并且文件夹app-root/data文件位于其中app-root/repo/).

在我的模板中,我如何提供图像文件?

使用url_for,如何引用flask文件夹之外的这些图像文件?

- data/
 |
  -- uploads/
- repo/
 |
  -- app/
    |
     -- __init__.py
Run Code Online (Sandbox Code Playgroud)

正如您可以在flask app文件夹外看到数据文件夹.如何data/uploads从flask app目录生成存储在(一级以上)文件的链接是个问题?

python static url-for flask openshift

11
推荐指数
1
解决办法
9638
查看次数

AWS Elasticache - 增加memcached项目大小限制

我在我的python Flask app中使用memcached模块AWS Elasticache(带Flask-Cache)

当我尝试设置一个小于1MB我需要重复访问缓存的文件时,我没有问题.但是当文件大小增加超过MB(文件可能是文本文件/ csv/xlsx等)时,我收到以下错误

错误:来自memcached_set的错误37:SUCCESS

我猜它是因为memcached项目的大小限制,上限为1MB.如何在AWS Elasticache中将此项目限制增加到5-6 MB?

在memcached中增加此项目大小限制是否有任何问题?

memcached amazon-web-services flask amazon-elasticache flask-cache

8
推荐指数
1
解决办法
3967
查看次数

条纹结帐-创建会话-对订阅应用税率

我正在尝试设置新的Stripe Checkout Create session。我无法在会话创建过程中为订阅设置税率,因为该订阅是由Stripe自动创建的。

我在仪表板上设置了税率,默认税率为20%。我希望将其自动应用于所有订阅。有人可以指导我吗?

stripe.checkout.Session.create(
        payment_method_types=['card'],
        subscription_data={
            'items': [{
            'plan': plan.stripe_plan_name,
            'quantity': 1
            }],
        },
        customer_email = user.email,
        success_url='https://www.jetpackdata.com/success',
        cancel_url='https://www.jetpackdata.com/cancel'
    )
Run Code Online (Sandbox Code Playgroud)

stripe.redirectToCheckout在客户端选择。

我在听网络提要'checkout.session.completed'在后端升级帐户。

我正在听'invoice.created',当status=draft设置时,我设置了默认税率(因为我们有一个小时可以在创建后对其进行修改)。

我应该改为收听'customer.subscription.created'并直接在订阅上进行设置,而不是在每张发票上进行设置吗?

首次客户订购购买似乎未应用税率,因为状态不像订购周期那样在一个小时内保持在草稿中。是因为我处于测试模式吗?

任何帮助,将不胜感激。

stripe-payments stripe-sca tax-rate stripe-subscriptions

8
推荐指数
1
解决办法
680
查看次数

Flask - 在请求之间将值存储在内存中

我有一个单页面应用程序 - 前端的Angularjs和后端的烧瓶让用户上传文件(xlsx,csv ...),然后交互式分析/查询文件

本质上,用户在首次上载时将文件加载到内存中,然后随后的ajax调用将在内存中接入该文件.我不知道如何在后续请求(ajax)之间将文件保留在内存中.

g每个请求后都会删除该变量,如果我理解了用于访问请求中的值的权限(通常由设置通过before_request并且可用views

请求上下文是请求的本地.我确实设法在current_app上设置值,然后能够在随后的ajax调用中访问它

# On my first file upload, i load the file into memory
and set it to a variable on current_app:

from flask import current_app
@app.route('/upload', methods =['POST'])
def upload():
   ...
   upload file into memory
   ...
   current_app.file = file_in_memory



@app.route('/subsequent_call')
def subsequent():
    # i'm able to access the file in memory through 
    the current_app.file which i set earlier

    return current_app.file.number_of_lines()
Run Code Online (Sandbox Code Playgroud)

这种将文件存储在current_app上的内存中的方法看起来不对,感觉太脏/太乱.这会有规模吗?

我可以在每次请求后挑选文件并在每次请求时将其拉回来.但是当用户交互式查询数据时,每次存储/腌制和重新获取文件到内存中似乎太沉重/低效

有没有其他优雅/正确的方法来做到这一点,app_context,werkzeug当地人等?或者我在想这一切都错了?

python ajax rest flask python-requests

7
推荐指数
1
解决办法
5200
查看次数

Excel VBA磅和冒号标志意义?

我试图了解一个vba函数,其中包含遍布它的磅和冒号符号.

VBA功能:

kn = 1#: pn = 1#:  y = 1#
Run Code Online (Sandbox Code Playgroud)

我知道英镑符号用于在Excel VBA中将变量声明为double.但是,从上述方面来看似乎没有任何意义.上述功能有什么作用?

excel vba excel-vba

6
推荐指数
2
解决办法
9818
查看次数

flask-socketio每个用户一个房间?昂贵?

我有一个运行pandas的烧瓶webapp,可以在后端进行一些数据分析.

现在,我采用了朴素的方法,使用AJAX让用户将查询发送回服务器并与数据进行交互.但事实证明每个请求都有很多开销,每次我需要将数据重新加载到pandas/memory中,这是非常重复的.

我认为socketio在这里很有用 - 我会打开一个套接字连接,这样一旦文件加载到pandas中,用户就可以通过套接字以更少的开销响应性地交互和查询数据.

所以我现在的问题是:

  • 我应该为每个用户打开一个房间,因为用户不需要互相交流吗?
  • 这是否规模 - 为每个用户开放一个房间?
  • 命名空间在哪里适合?我是否将命名空间分配给网站的不同部分,并进一步为每个用户打开每个命名空间下的空间?
  • 或者我应该生成一个猴子修补线程?每个用户的Greenlet?

flask socket.io pandas gevent-socketio flask-socketio

5
推荐指数
1
解决办法
952
查看次数

Flask-SQLAlchemy-动态连接到多个数据库

我有一个flask webapp用户可以连接到自己的mysql数据库并查询自己的表的地方

使用flask-sqlalchemy创建到不同数据库的多个连接的最佳方法是什么。似乎需要处理scoped_sessionsessionmaker但似乎无法解决。

同样是问题的第二部分,一旦我为其中一个用户创建了与mysql db的连接,我如何在请求之间保持连接?

当前,我将每个用户的连接字符串放在flask会话变量上,并在每个新请求下,依次创建引擎和连接

engine = create_engine(connection_string, convert_unicode=True)
conn = engine.connect()
db_session = Session(bind=conn) # Session - i create it globally on the __init__ like this Session = scoped_session(sessionmaker()) and import it in the view

## Query using the db_session
Run Code Online (Sandbox Code Playgroud)

这对于创建引擎和与每个请求的连接来说非常浪费,无法在请求之间保持连接吗?

mysql session sqlalchemy flask flask-sqlalchemy

4
推荐指数
1
解决办法
2868
查看次数

在 Pandas 中获取同一系列中的不同数据类型

假设我们有一个 pandas 系列,其中包含以下数据类型的混合(字符串、整数和日期时间)

如果我检查 diff_series ( ) 上的 dtype diff_series.dtype,它会告诉我它是一个预期的对象。我想获得该系列中的不同数据类型。我有以下列表理解,它使我获得了一系列中独特的数据类型。

import datetime
import pandas as pd

>> diff_series = pd.Series(['1','2',3,"random_text",datetime.datetime.now()])
>> set([type(i) for i in diff_series])

   set([<type 'str'>, <type 'datetime.datetime'>, <type 'int'>])
Run Code Online (Sandbox Code Playgroud)

但我有一种感觉,应该有一种更有效(潘多拉式)的方式来做到这一点?

我试过

>> diff_series.get_dtype_counts()

   object    1
   dtype: int64
Run Code Online (Sandbox Code Playgroud)

这不是我想要的。有任何想法吗?

python types numpy series pandas

3
推荐指数
1
解决办法
1364
查看次数

send_static_file 未从蓝图中根目录的静态文件夹中获取

views.py我的蓝图内部来看,我试图使用它send_static_file来交付一个index.html但无法让它工作

__init__.py我有一个名为 main 的蓝图,我在蓝图文件夹下对其进行初始化mod_main

from flask import Blueprint 
mod_main = Blueprint('main',name,static_folder='/static', static_url_path='/static') 
from . import views
Run Code Online (Sandbox Code Playgroud)

我的主要app初始化在__init__.pyapp文件夹下

app = Flask(__name__)
from .mod_main import mod_main as main_blueprint
app.register_blueprint(main_blueprint,url_prefix='/main')
Run Code Online (Sandbox Code Playgroud)

views.py蓝图main中的文件(mod_main文件夹)下

@mod_main.route('/')
def index():
    return mod_main.send_static_file('index.html')
Run Code Online (Sandbox Code Playgroud)

但它不断解决404 Not found。我如何提供根文件夹中的文件夹index.html下的任何线索(如果我在蓝图中创建一个静态文件夹,我可以让它工作。但我想从根目录传递它)staticappapp

这是包含基本文件的结构

app
|
-- mod_main/
   |
    -- views.py
    -- __init__.py

-- __init__.py

-- static /
   |
    -- index.html
Run Code Online (Sandbox Code Playgroud)

python static-files blueprint flask

1
推荐指数
1
解决办法
6541
查看次数