小编Raf*_*ges的帖子

使用SQLAlchemy正确地将Model与应用程序分离的Pythonic方法

我很难让我的应用程序运行.每当我尝试在包中分离模块时,Flask-SQLAlchemy扩展会创建一个空数据库.为了更好地解释我在做什么,让我展示我的项目是如何构建的:

Project
|
|-- Model
|   |-- __init__.py
|   |-- User.py
|
|-- Server
|   |-- __init__.py
|
|-- API
|   |-- __init__.py
Run Code Online (Sandbox Code Playgroud)

这个想法很简单:我想为我的模型创建一个包,因为我不喜欢在单个包中传播代码,并且单独的"子"项目(如API),因为将来我会更好地使用蓝图隔离子应用程序.

代码很简单:

一,Model.__init__.py:

from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
Run Code Online (Sandbox Code Playgroud)

请注意,我创建它只是为了使用SQLAlchemy()整个包中的单个对象.不,我们去Model.User

from Model import db

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    Name = db.Column(db.String(80))
    Age = db.Column(db.Integer)
    ...
Run Code Online (Sandbox Code Playgroud)

再次注意我用过的模型导入数据库允许相同的数据库对象.

最后,Server.__init__.py这样做:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
import Model, API
db = Model.db


def main():
    app = Flask("__main__")
    db = …
Run Code Online (Sandbox Code Playgroud)

python flask flask-sqlalchemy

13
推荐指数
2
解决办法
9740
查看次数

在C#中生成巨大的图像

我需要使用PixelFormat.Format24bppRgb编码创建一个巨大的图像(aprox 24000 x 22000).我知道打开它几乎是不可能的......

我想要做的是这样的:

Bitmap final = new Bitmap(width, height, PixelFormat.Format24bppRgb);
Run Code Online (Sandbox Code Playgroud)

正如预期的那样,抛出异常,因为我无法以这种方式处理内存中的11GB文件.

但我有一个想法:我可以在生成文件时编写文件吗?所以,我不会在RAM上工作,而是在研究HD.

只是为了更好地解释:我有大约13K的瓷砖,我打算在这个愚蠢的文件中将它拼接在一起.因为我可以按给定顺序迭代它们,所以我可以使用不安全的代码将其直接写入内存.

有什么建议?

c# image-processing

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

jqGrid:如何在不同页面上使用multiselect

简单的问题,很难找到答案:

如果我尝试以编程方式选择一行,我使用这个:

$('#grid').jqGrid('setSelection', rowId);
Run Code Online (Sandbox Code Playgroud)

问题是它只选择当前可见页面上的行.如果rowId在另一个页面上,则不会选中它.

更多信息:我的目标是在第一次加载页面时选择多行(在多个页面上展开).

谢谢,拉斐尔

PS:这家伙有同样的问题.还没有答案: 如果启用了分页,则jqgrid multiselect仅选择当前页面上的行.如何让它跨页面选择行?

paging jqgrid multi-select

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

使用SQL检测异常间隔

我的问题很简单:我有一个包含一系列状态和时间戳的表(为了好奇,这些状态表示警报级别),我想查询此表以获得两种状态之间的持续时间.

看起来很简单,但这里有一个棘手的部分:我不能创建查找表,程序,它应该尽可能快,因为这个表是一个拥有超过10亿条记录的小怪物(不开玩笑!)...

架构很简单:

[pk]时间价值

(实际上,还有第二个PK,但这对此无用)

在真实世界的例子之下:

Timestamp          Status
2013-1-1 00:00:00    1
2013-1-1 00:00:05    2
2013-1-1 00:00:10    2
2013-1-1 00:00:15    2
2013-1-1 00:00:20    0
2013-1-1 00:00:25    1
2013-1-1 00:00:30    2
2013-1-1 00:00:35    2
2013-1-1 00:00:40    0

仅考虑2级警报的输出应如下所示,应报告2级警报的开始及其结束时(达到0时):

StartTime          EndTime            Interval
2013-1-1 00:00:05  2013-1-1 00:00:20     15
2013-1-1 00:00:30  2013-1-1 00:00:40     10

我一直在尝试各种各样的内部连接,但是所有这些都引导我进行了一次惊人的笛卡尔爆炸.你能帮助我找到一种方法来实现这个目标吗?

谢谢!

sql sql-server temporal-database sql-server-2008

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