小编Jam*_*s R的帖子

你如何让PyPy,Django和PostgreSQL一起工作?

应该使用什么fork或者包的组合来使PyPy,Django和PostgreSQL一起玩得很好?

我知道PyPy和Django一起玩得很好,但我不太确定PyPy和PostgreSQL.我确实看到Alex Gaynor制作了一个名为pypy-postgresql的PyPy 分支.我也知道有些人正在使用psycopg2-ctypes.

这些叉子之间有区别吗?或者我们应该使用稳定的1.9 PyPy并使用psycopg2-ctypes?使用ctypes选项可能会影响性能,请参阅下面的注释.

另外,有没有人在使用PyPy和pyscopg2时遇到任何陷阱?如果某些东西不能正常工作,那么回归CPython似乎很容易,但主要是我正在寻找程序员可以提前做好准备的事情.

我环顾四周,似乎psycopg2本身与PyPy一起工作.虽然psycopg2-ctypes似乎确实对某些人有用,但是有一个关于pypy-dev的讨论.我在Windows上工作,我不认为psycopg2-ctypes已经为Windows做好了准备,遗憾的是.

python django postgresql pypy psycopg2

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

减去两个带注释的列

我需要能够对两个带注释的列的聚合进行排序

所以我想做这样的事情:

c = c.annotate(metric=Sum('results__metric'))
c = c.annotate(metric_prior=Sum('results__metric_prior'))
c = c.annotate(variance=F('metric')-F('metric_prior')) #doesn't work, for demonstrative purposes only
Run Code Online (Sandbox Code Playgroud)

然后:

c = c.order_by('variance')
Run Code Online (Sandbox Code Playgroud)

有谁知道如何完成上述的事情?

python django django-orm

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

弹性搜索最佳主人数

我们目前有一个由6个数据节点和一个非数据节点组成的集群.其中,两个目前是主人符合条件.此群集位于EC2上.

什么是主节点的最佳数量,或者是否有理由进行区分?

elasticsearch

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

使用 urllib3 或 requests 和 Celery

我们有一个脚本可以定期从各种来源下载文档。我将把它转移到 celery,但在这样做的同时,我想利用连接池,但我不知道如何去做。

我目前的想法是使用请求来做这样的事情:

import celery
import requests

s = requests.session()

@celery.task(retry=2)
def get_doc(url):
    doc = s.get(url)
    #do stuff with doc
Run Code Online (Sandbox Code Playgroud)

但我担心连接会无限期地保持打开状态。

只要我正在处理新文档,我真的只需要连接保持打开状态。

所以这样的事情可能:

import celery
import requests


def get_all_docs()
    docs = Doc.objects.filter(some_filter=True)
    s = requests.session()
    for doc in docs: t=get_doc.delay(doc.url, s)

@celery.task(retry=2)
def get_doc(url):
    doc = s.get(url)
    #do stuff with doc
Run Code Online (Sandbox Code Playgroud)

但是,在这种情况下,我不确定连接会话是否会跨实例持续存在,或者一旦酸洗/取消酸洗完成,请求是否会创建新连接。

最后,我可以在类方法上尝试对任务装饰器的实验性支持,如下所示:

import celery
import requests


class GetDoc(object):
    def __init__(self):
        self.s = requests.session()

@celery.task(retry=2)
def get_doc(url):
    doc = self.s.get(url)
    #do stuff with doc
Run Code Online (Sandbox Code Playgroud)

最后一个似乎是最好的方法,我将对此进行测试;但是,我想知道这里是否有人已经做过类似的事情,或者如果没有,你们中的一个人可能有比上述方法更好的方法。

python django celery urllib3 python-requests

6
推荐指数
0
解决办法
1248
查看次数

身份验证和python请求

我正在尝试使用请求下载一些文档,但页面将我重定向到屏幕上的用户日志,从而下载HTML页面.

我试过做:

c=requests.get(url,auth=HTTPBasicAuth('user','pass'))
Run Code Online (Sandbox Code Playgroud)

但我没有通过身份验证.

我也尝过香草和文摘.

表单本身如下所示:

<input id="username" name="username" class="required" tabindex="1" type="text" value="" size="25" autocomplete="false"/>
<br/>

<label for="password">Password</label>
<input id="password" name="password" class="required" tabindex="2" type="password" value="" size="25" autocomplete="off"/>
Run Code Online (Sandbox Code Playgroud)

我是否需要传递用户名和密码作为有效负载的一部分?如果是这样,我该怎么做?到目前为止,我尝试了几种不同的方法.

python python-requests

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

sparklines条形图适合

我正在使用sparklines包http://omnipotent.net/jquery.sparkline/#s-about

我试图让迷你图条形图适合预定尺寸,但我有很多图表,理想情况下这应该是动态的.

我正在尝试这样的事情:

$.each(sparklines, function(index, sparkline) {
    var sparkline = $(sparkline);
    var data_out = sparkline.attr('data');
    $.getJSON('/search/histogram/?histo_field=' + data_out, function (data) {
        var width = sparkline.width();
        var data_obj = data.data;
        var l = data_obj.length;
        var pixel_width = parseInt((370-l) / l);
        sparkline.sparkline(data_obj, {type: 'bar', "barWidth":pixel_width,"height":50})
        });
});
Run Code Online (Sandbox Code Playgroud)

parseInt((370-l) / l);是考虑间距.

问题是,它不合适.特别是当条形图中有许多这样的条形图时.

它应该使用370px,但在一种情况下它使用363px而在另一种情况下它使用281.

我尝试过这样做parseInt(370) / l);但是留下了大约十个px的悬垂.

有什么想法吗?

javascript jquery sparklines

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

使用bootstrap和django的异步表单

所以我试图让这个形式异常.理想情况下,我使用此表单添加单位,然后动态更新表.我不希望整个页面刷新.我用javascript并不是那么好用,我可以用一些指针来说明正在发生的事情:

发生了一些我不想发生的事情:

  1. 整个页面令人耳目一新
  2. request.is_ajax()为False.

大多数情况下,我只是想了解发生了什么,但问题是,如何更改以下内容以解决上述两个问题?(如果问题完全是问题.)

下面的一些代码来自这个问题:

如何在twitter bootstrap模式窗口中插入django表单?

为了记录,我看到帖子在请求中很好.POST,我只是想让它工作异步,这就是我的问题与上面的不同.

{% block scripts %}
<script type="text/javascript">
    $(document).ready(function() {
        modalConnect();
    });
</script>

<script type="text/javascript">
$( document ).ajaxStop( function() {
    modalConnect();
});
</script>

<script type="text/javascript">
    function modalConnect()
        {
            //unbind the click event. If not done we will end up with multiple click event bindings, since binding is done after each ajax call.
            $(".editItem").unbind('click');
            //bind the click event
            $(".editItem").click(function(ev) { // for each edit item <a>
                ev.preventDefault(); // prevent navigation
                var url = this.href; …
Run Code Online (Sandbox Code Playgroud)

javascript django ajax twitter-bootstrap

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