小编Nik*_*nyh的帖子

如何在vim中重新打开缓冲区?

我在使用XPTemplate vim插件时遇到了一些问题.有时它会产生错误,并且无法编辑文件.我通过以下步骤来治愈它:

  1. 删除缓冲区
  2. 找到关闭的文件
  3. 再次打开文件

如何自动完成此过程?

vim

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

在龙卷风中处理用户会话的标准方法

因此,为了避免"没有人最好的答案"问题,我将问,不是最好的方式,而是使用Tornado框架时处理会话的标准或最常用的方法.也就是说,如果我们不使用第三方认证(OAuth等),而是我们希望在浏览器中拥有我们自己的带有安全cookie的Users表,但是大多数会话信息存储在服务器上,那么最常见的做法是什么?我见过一些人使用Redis,有些人使用他们的普通数据库(MySQL或Postgres或其他),有些人使用memcached.

我正在处理的应用程序一次不会有数百万用户,甚至可能有数千个用户.但是,最终需要获得一些中等复杂的授权方案.我正在寻找的是确保我们不会做一些与一般Tornado社区不同的"奇怪"的事情,因为认证和授权虽然是我们需要的,但不是在我们产品的核心并不是我们应该区分自己的地方.所以,我们正在寻找大多数人(使用龙卷风)在这方面所做的事情,因此我认为这是一个(在理论上)客观真实答案的问题.

当然,理想的答案将指向示例代码.

python tornado

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

Google联系人使用oauth2.0进行导入

有哪些方法可以使用python和oauth2.0导入谷歌联系人?

我们成功获得了凭据,我们的应用程序请求访问联系人,但在获得凭据后,我找不到发现联系人api的方法.

所以像:

 from apiclient.discover import build
 import httplib2
 http = httplib2.Http()
 #Authorization
 service = build("contacts", "v3", http=http) 
Run Code Online (Sandbox Code Playgroud)

给我们UnknownApiNameOrVersion例外.看起来联系人API不在apiclient支持的API列表中.

我正在寻找替代方法.

python google-api contacts oauth-2.0 google-api-python-client

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

找不到图书馆:tibrvj

我在使用Tibco RV的Linux服务器上运行Java应用程序,我收到以下错误:

TibrvException[error=901,message=Library not found: tibrvj]
Run Code Online (Sandbox Code Playgroud)

是什么导致了这个问题?

我已经添加了含有库路径*.so进入LD_LIBRARY_PATH,但仍是同样的结果.

更新:

目前,我已<MyApp>/libs/tibrvj.jar加入classpath.tibrvj.jar从Windows环境复制到我正在运行我的应用程序的Linux机器.我从类路径中删除了这个并添加了另一个引用<TibcoDirectory>/libs/tibrvj.jar,它修复了问题.它们与前一个文件的大小不同,从Windows复制的那个和当前在Linux框中的一个可能有区别.有人可以解释为什么会这样吗?

java tibco tibco-rv

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

Django模型字段.自定义字段值设置器

有没有办法在django定制属性设置器这样做?

class MyModel(models.Model):
    myfield = models.CharField(length = 250)

    @myfield.setter
    def set_password(self, value):
       self.password = encrypt(value)
Run Code Online (Sandbox Code Playgroud)

python django

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

如何查找32位缓冲区中是否有n个连续的设置位?

也许你可以帮助我解决以下问题,这可以帮助我加速我正在考虑的内存管理器(我不确定是否存在解决方案 - 我没有找到一个).

我有一个32位寄存器,我需要找到它中是否有n个连续的设置位,如果是,那么它们的偏移量是多少.例如,如果寄存器保持以下值111100000000000000000001111111000且n等于4 - 接受以下任何答案(偏移量从0开始):

3,4,5,6,28

我所拥有的原子操作都是常规的按位运算(&,|,〜,...),并且还找到最低有效位偏移(上面的寄存器中为3).该算法(假设存在一个) - 应该不超过5个原子操作.

algorithm bit-manipulation

7
推荐指数
2
解决办法
2564
查看次数

Django的.如何定位慢速测试?

如何找到慢django测试?如何定位测试,测试运行器可以"卡住"?你知道任何好的定制django测试跑步者,可以提供更详细的测试性能信息吗?

python testing django unit-testing

6
推荐指数
3
解决办法
1137
查看次数

BCrypt.如何用python3存储盐?

我们有代码,适用于python 2.

@password.setter
def password(self, value):
    self.salt = bcrypt.gensalt()
    self.passwd = bcrypt.hashpw(value.encode('utf-8'), self.salt)

def check_password(self, value):
    return bcrypt.hashpw(value.encode('utf-8'), self.salt.encode('utf-8')) == self.passwd
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试将其转换为python3时,我们遇到以下问题:

在cassandra驱动程序级别发生错误:

cassandra.cqlengine.ValidationError: passwd <class 'bytes'> is not a string
Run Code Online (Sandbox Code Playgroud)

好.将salt和passwd转换为字符串:

@password.setter
def password(self, value):
    salt = bcrypt.gensalt()
    self.salt = str(salt)
    self.passwd = str(bcrypt.hashpw(value.encode('utf-8'), salt))
Run Code Online (Sandbox Code Playgroud)

现在盐节省了.但是check_password我们得到了ValueError: Invalid salt.如果我们将检查密码更改为:

def check_password(self, value):
    return bcrypt.hashpw(value, self.salt) == self.passwd
Run Code Online (Sandbox Code Playgroud)

我们得到错误TypeError: Unicode-objects must be encoded before hashing.

在哪里挖?

密码和检查密码中的UPD Salt值看起来相同,例如:

b'$2b$12$cb03angGsu91KLj7xoh3Zu'                                                                        
b'$2b$12$cb03angGsu91KLj7xoh3Zu'
Run Code Online (Sandbox Code Playgroud)

python bcrypt python-2.7 python-3.x

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

用DispatcherMiddleware包装的Flask应用程序不再具有test_client

我们可以通过test_client以下方式获取样品申请:

class MyTestCase(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        my_app.app.config['TESTING'] = True
        cls.client = my_app.app.test_client()
Run Code Online (Sandbox Code Playgroud)

但是,如果我们用app包装DispatcherMiddleware- 我们会得到错误 AttributeError: 'DispatcherMiddleware' object has no attribute 'test_client'.

有没有办法测试烧瓶应用的组成?

我们希望能够做到这样的事情:

cls.client = my_app.all_apps.test_client()
Run Code Online (Sandbox Code Playgroud)

什么all_apps是中间件像:

all_apps = DispatcherMiddleware(my_app, {
    '/backend': backend_app,
})
Run Code Online (Sandbox Code Playgroud)

python werkzeug flask

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

龙卷风.类似Django的testrunner和测试数据库

我喜欢django单元测试,因为他们在运行时创建并删除测试数据库.

有什么方法可以为龙卷风创建测试数据库?

UPD:我对测试运行中的postgresql测试数据库创建感兴趣.

python django unit-testing tornado

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