小编Bri*_*unt的帖子

如何在Django/Google App Engine中创建日志颜色?

如果有人正在编写Django/Google App Engine应用程序,并希望根据颜色(即红色错误)方便显眼的日志,那么如何设置它?

我已经从这个问题中复制了有用的解决方案,但我不确定如何将它集成到Django/Google App Engine中.

我想应该将以下内容放在应用程序的main.py中(主要来自这里的示例:在Google App Engine上运行Django):

from contrib.utils import ColouredLogger # from the SO question above
logging.setLoggerClass(ColouredLogger)
Run Code Online (Sandbox Code Playgroud)

...其中contrib.utils是我将airmind的代码从上面的链接放到他的SO答案的地方.

但是,对于GAE的控制台输出似乎没有任何作用,GAE仍然是原始格式+纯色.

建议和意见将非常感谢.

干杯,布莱恩

python django logging google-app-engine colors

14
推荐指数
4
解决办法
6506
查看次数

如何在Google App Engine中执行全文搜索?

这是一个简单的问题,但我没有在任何地方找到答案.思想和投入赞赏.

我也在使用Django,因为它的价值.:)

干杯.

search google-app-engine full-text-search

14
推荐指数
3
解决办法
6700
查看次数

在Coffeescript中迭代ES6 Set/Map(使用`of`运算符)

如何在Coffeescript中迭代ES6 MapSet

在Javascript中,人们可以使用例如

s = new Set()
s.add({a: 1})
for (x of s) {
  console.log(x);
}
Run Code Online (Sandbox Code Playgroud)

但是Coffeescript有自己的of运算符转换为in,即:

console.log(x) for x of s
Run Code Online (Sandbox Code Playgroud)

成为... for (x in s) { ... }.

如何of在Coffeescript中访问Javascript的运算符?

人们可以通过骑自行车来编写自己的自定义迭代器s.values().next(),但那可能是令人厌恶的.:)

javascript coffeescript ecmascript-6

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

只有当有人有加密狗时,如何才能使网站可访问?

假设您希望在SSL加密的登录/密码之上添加额外的凭据层,但您不希望增加用户的复杂性.有没有办法将拥有加密狗的要求添加到具有现有跨平台浏览器功能的Web服务器身份验证方案中?

换句话说,要访问网站,您需要一个用户名,密码和已插入客户端计算机的USB加密狗.加密狗可能会做出某种挑战/回应.

如果这个加密狗解决方案能够自动或与简单的插件一起使用,那将是理想的选择.

感谢您的意见和建议.

security authentication dongle challenge-response

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

创建一个jQueryUI 1.8 Button菜单

现在jQueryUI 1.8已经出来了,我正在浏览更新并遇到了新的Button小部件,特别是带有下拉列表SplitButton的一个演示.此演示似乎表明Button小部件可用于在此处创建下拉菜单.

作为讨论的问题,我想知道如何使用这个新的Button小部件创建一个下拉菜单.

干杯.

jquery jquery-ui contextmenu button drop-down-menu

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

jQueryUI自动完成 - 当没有返回结果时

我想知道当使用jQueryUI自动完成时从服务器返回空结果时如何捕获并添加自定义处理程序.

关于这一点似乎有一些与各种jQuery插件相关的问题(例如,当结果为空时,jQuery自动完成显示"无数据"错误消息),但我想知道是否有更好/更简单的方法来实现与jQueryUI相同自动完成.

在我看来,这是一个常见的用例,我想也许jQueryUI通过添加干净地处理这种情况的能力改进了jQuery自动完成.然而,我无法找到这种功能的文档,在我破解它之前,我想抛弃一些触角,以防其他人以前见过这个.

虽然可能不是特别有影响力,但我可以让服务器返回任何内容 - 例如返回HTTP 204: No Content200/JSON空列表 - 无论是什么使得最容易在jQueryUI的自动完成中捕获结果.

我的第一个想法是response callback根据文档传递一个带有两个参数的回调,即一个请求对象和一个处理代码:

第三种变体即回调提供了最大的灵活性,可用于将任何数据源连接到自动完成.回调有两个参数:

一个请求对象,具有一个名为"term"的属性,它引用当前文本输入中的值.例如,当用户在城市字段中输入"new yo"时,自动完成术语将等于"new yo".

一个响应回调,它要求一个参数包含要向用户建议的数据.应根据提供的术语过滤此数据,并且可以采用上述任何简单本地数据格式(String-Array或具有标签/值/两者属性的Object-Array).

当响应回调没有收到任何数据时,它会插入一个特殊的单行对象数组,该对象数组有一个标签和一个没有数据的指示符(因此select/focus将其识别为无数据返回的指示符).

这似乎过于复杂.我更喜欢能够使用一个源:"http:// ...",只是在某个地方有一个回调,表明没有返回任何数据.

谢谢你的阅读.

布赖恩

编辑:

这是我为解决这个问题而创建的包装函数,基于@ ThiefMaster的保证,它是正确的方法:

    function autocomplete(input, source_url, on_select, on_focus, default_data) {
        /* Autocompletion for an input field
         * input: the field for autocompleting
         * source_url: the JSON url for getting data
         * on_select: function (event,ui) - when someone selects an element
         * on_focus: function (event, ui) - when someone focuses …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-ui autocomplete

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

嵌入在yaml中的html的VIM语法高亮显示

给定一个yaml包含的文件html,如下所示:

template        : |+ 
    <div>Hello, world</div>
Run Code Online (Sandbox Code Playgroud)

是否可以在Vim(版本7.3.087)中突出显示带html语法高亮的html部分?

我发现帖子在文件的区域内突出显示不同的语法,这似乎与我正在寻找的概念完全相同,但我无法按预期工作yaml.我希望能够做到以下(如链接中所示):

" .vimrc
" include the code from the above link
call TextEnableCodeSnip('html' ,'#{{{html' ,'#html}}}', 'SpecialComment')
Run Code Online (Sandbox Code Playgroud)

然后有yamlas,例如:

 template        : |+  #{{{html
    <div>Hello, world</div>
 #html}}}
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不能按预期工作,即html代码仍然完全突出显示yaml.我还注意到,使用我的配置(MacVim 55),这在文本文件中也不起作用.

我很感激你的想法或建议,谢谢你的阅读.

vim syntax-highlighting vim-syntax-highlighting

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

使用测试平台时,Google App Engine会设置用户

我正在使用GAE 测试平台服务,当我运行时,users.get_current_user()我得到Noneie

>>> import sys
>>> sys.path.append("/usr/local/google_appengine") # for Mac OS X
>>> from google.appengine.api import users
>>> from google.appengine.ext import testbed
>>> testbed = testbed.Testbed()
>>> testbed.activate()
>>> testbed.init_user_stub()
>>> users.get_current_user() == None
True
Run Code Online (Sandbox Code Playgroud)

这是预期的结果.但是,我想在运行一些单元测试时登录假用户.

如果可能(我希望它会),那么如何testbed在从命令行运行时记录用户以便get_current_user()返回实际用户?

谢谢阅读.

python google-app-engine testbed

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

使用Google App Engine`file` api测试功能

我有一个使用Google Blobstore API的函数,这是一个退化的情况:

#!/usr/bin/python
from google.appengine.ext import testbed

def foo():
    from google.appengine.api import files
    blob_filename = files.blobstore.create(mime_type='text/plain')
    with files.open(blob_filename, 'a') as googfile:
        googfile.write("Test data")

    files.finalize(blob_filename)

tb = testbed.Testbed()
tb.activate()
tb.init_blobstore_stub()

foo() # in reality, I'm a function called from a 'faux client'
      # in a unittest testcase.
Run Code Online (Sandbox Code Playgroud)

这会产生的错误是:

Traceback (most recent call last):
  File "e.py", line 18, in 
    foo() # in reality, I'm a function called from a 'faux client'
  File "e.py", line 8, in foo
    blob_filename = files.blobstore.create(mime_type='text/plain')
  File …

google-app-engine unit-testing

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

单元测试Flask会话 - 无法使用session_transaction重现失败

我正在测试一个Flask应用程序(Flask 0.9),特别是我有一个会话夹具,我想以文档化的方式运行,就像这样(我理解):

from flask import Flask, session
app = Flask(__name__)

@app.route('/', methods=['POST'])
def m():
    logging.error(session) # expect {'x': 1}
    return ""

with app.test_request_context() as trc:
  with app.test_client() as c:
    with c.session_transaction() as sess:
      sess['x'] = 1
    c.post()
Run Code Online (Sandbox Code Playgroud)

这按预期工作,输出如下:

ERROR:root:<SecureCookieSession {'x': 1}>
Run Code Online (Sandbox Code Playgroud)

不幸的是我遇到了意外的结果,其中会话数据没有在端点函数中设置,即输出是这样的:

ERROR:root:<SecureCookieSession {}>
Run Code Online (Sandbox Code Playgroud)

只有从我的单元测试框架运行时才会出现此问题.就目前情况而言,我无法用堕落的情况重现这个问题,尽管我已经做了相当大的努力,其中有一些努力.重要的是我已经包括在内,itsdangerousGoogle App Engine testbed期待其中一个可能是原因.

在我自己的系统上,我已经超越了要点,几乎完全复制了我的单元测试框架,试图将其隔离开来.同样,我从测试框架中删除了越来越多的相关代码.到目前为止,我无法想到退化案例与我可能影响结果的精简框架之间的差异.我已经遍历了c.post()pdb中的调用来尝试找出这种恶意的原因,但还没有收集任何有用的见解.

这就是说,我会对这个问题可能存在的方向或建议表示感谢.什么可能影响Werkzeug的背景,以至于session_transaction没有被尊重?

flask python-unittest

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