小编Jus*_*tin的帖子

锁定一个物体?

我是Node.js的新手,我确信有一个简单的答案,我找不到它:(

我正在使用文件系统来保存'packages'(状态扩展名为'mypackage.idle'的文件夹).用户可以对这些文件执行操作,这会导致状态变为'qa'或'deployloying'等.如果服务器接受大量请求并且多个请求进入同一个包,我将如何检查状态然后执行操作,这将改变状态,保证另一个请求在操作之前/期间没有改变它发生?

所以在c#这样的事情

lock (someLock) { checkStatus(); performAction(); }
Run Code Online (Sandbox Code Playgroud)

谢谢 :)

locking node.js

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

十进制到JSON

我从数据库中提取一个十进制值的总和.我正在尝试在JSON结果中使用该值

json.dumps( { 'sum': amount } ) #where amount is my Decimal
Run Code Online (Sandbox Code Playgroud)

Django无法序列化Decimal.我可以将它转换为字符串,但我想在JSON中使用数字类型.如果我尝试将其转换为float最终超过2位小数.

如果可能,需要发生什么才能获得如下结果?

{ 'sum': 500.50 }
Run Code Online (Sandbox Code Playgroud)

python django

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

如何使用NSAttributedString保持文本不被包装在NSTableView中

我有一个NSTableView,有2列,一列用于图标,另一列用于两行文本.在第二列的文本列中,我有一些较大的文本,用于表示项目的名称.然后我有一个新的行和一些描述项目状态的较小文本.

当名称变得如此之大以至于它不适合它包裹的一行时(或者当你将窗口缩小到如此之小以至于它导致名称不适合单行时).

row1 ===============
| 图片| 一些名字|
| 图片| 闲置|
row2 ================
| 图片| 一些名字真的很长的名字| < -这获取包裹推"空闲"出来的视图
| 图片| 闲置|
===================

我的问题是,如果名称太大而不适合,我怎么能保持文本不被包装并让NSTableView显示水平滚动条?

cocoa objective-c

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

使用MSSQL转1.1.1和ODBC

目前FreeTDS 0.92.4/unixODBC 2.3.1启动并运行,与MSSQL服务器连接并能够执行查询等.

我已经找到了Go的这个ODBC实现列表,并以粗体方式尝试了这两个:


mgodbc

我收到了一堆弃用警告(查看OSX 10.8及更高版本不推荐使用的标题):

cc1: warnings being treated as errors
mgodbc.go: In function 'mSQLColAttribute':
mgodbc.go:31: warning: 'SQLColAttributeW' is deprecated (declared at /usr/include/sqlucode.h:128)
mgodbc.go: At top level:
mgodbc.go:44: warning: 'SQLDisconnect' is deprecated (declared at /usr/include/sql.h:896)
mgodbc.go:51: warning: 'SQLGetDiagRecW' is deprecated (declared at /usr/include/sqlucode.h:233)
mgodbc.go:62: warning: 'SQLGetInfoW' is deprecated (declared at /usr/include/sqlucode.h:273)
mgodbc.go:67: warning: 'SQLBindParameter' is deprecated (declared at …
Run Code Online (Sandbox Code Playgroud)

odbc go

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

为什么在并发.futures.Future 实例中没有引发 TimeoutError

我基于https://docs.python.org/3/library/concurrent.futures.html#id1的示例。

\n\n

我已更新以下内容:
\n data = future.result()
\n为此:
\ndata = future.result(timeout=0.1)

\n\n

该文档concurrent.futures.Future.result说明:

\n\n
\n

如果调用在超时秒内尚未完成\xe2\x80\x99,则会引发 TimeoutError。超时可以是 int 或 float

\n
\n\n

(我知道请求超时,为 60,但在我的真实代码中,我正在执行不使用 urllib 请求的不同操作)

\n\n
import concurrent.futures\nimport urllib.request\n\nURLS = [\'http://www.foxnews.com/\',\n        \'http://www.cnn.com/\',\n        \'http://europe.wsj.com/\',\n        \'http://www.bbc.co.uk/\',\n        \'http://some-made-up-domain.com/\']\n\n# Retrieve a single page and report the url and contents\ndef load_url(url, timeout):\n    conn = urllib.request.urlopen(url, timeout=timeout)\n    return conn.readall()\n\n# We can use a with statement to ensure threads are cleaned up promptly\nwith concurrent.futures.ThreadPoolExecutor(max_workers=5) as executor:\n    # Start the load operations …
Run Code Online (Sandbox Code Playgroud)

python concurrency python-3.x

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

makemessages的Unicode问题 - 所有Django 1.6.2 Python 3.3

Python 2.7升级项目- > 3.3.1Django 1.4 - > 1.6.2.

更新代码后,我们的应用程序再次运行(在py3中).
翻译是从.mo文件中提取的.

唯一的问题是我们的旧.po文件无法使用

django-admin.py makemessages -a

它显示了一个可爱的

UnicodeDecodeError: 'ascii' codec can't decode byte...

我们可以makemessages第一次运行并获取骨架文件.一旦我们将任何非ASCII(ǹ,è等)的翻译添加到msgstr值中,就makemessages无法完成.
(如果我们运行带有更高详细程度模板的makemessages,则会跳过任何非ASCII字符.)

我发现了类似问题的错误报告,但它们又回到了1.3.x版本,但没有真正适用于上述版本.


更新,更多信息:

这是异常发生的地方:
../ python3.3 /subprocess.py第847行

def _translate_newlines(self, data, encoding):
    data = data.decode(encoding)
    return data.replace("\r\n", "\n").replace("\r", "\n")
Run Code Online (Sandbox Code Playgroud)

encodingANSI_X3.4-1968.我已经将模板文件保存为UTF-8以及.po文件.

这是.po标题(只是从makemessages自动创建的骨架):

# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file …
Run Code Online (Sandbox Code Playgroud)

django unicode gettext python-3.x

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

向运行 Gunicorn 的 Flask 应用程序添加路由前缀

tldr; 寻找一种方法来为运行在 Gunicorn 后面的应用程序中的所有路由添加前缀,而没有反向代理/蓝图/重复前缀@route(PREFIX + '/')等。


创建一些 Python 服务,使用 Flask,在 Docker 容器中运行。
目前不使用 Nginx/Apache 进行反向代理。

当单独运行烧瓶时,有类似下面的东西
- (例如% python app.py响应localhost:5000/a/b/some-route

base_path = "/a/b"
app = DispatcherMiddleware(_root_app, {base_path: self})
run_simple(host, port, app, **options)
Run Code Online (Sandbox Code Playgroud)

不知道在 Gunicorn 后面跑时如何获得相同的结果。
(真的很想在不为主应用程序制作蓝图的情况下做到这一点。还试图避免在 each 中使用相同的前缀@route(PREFIX + '')

这样做的原因
使用添加一些路由以及蓝图的扩展。希望所有的应用程序路由和扩展/蓝图路由都带有前缀。

这个问题是专门针对 Flask 提出的,我可以使用该DispatcherMiddleware方法进行工作。
我的问题是在 Gunicorn 后面运行时如何让它工作(前面没有 Nginx 或 Apache,只有 Gunicorn)


潜在的修复:

目前使用 Flask 的一个子类(需要做一些定制的日志废话。)
覆盖add_url_rule作品。

prefixed_rule = self._prefix_rule(rule)
super().add_url_rule(prefixed_rule,
                     endpoint=endpoint,
                     view_func=view_func,
                     **options)
Run Code Online (Sandbox Code Playgroud)

这也适用于我们的扩展

python flask gunicorn

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