小编Mic*_*ier的帖子

DBD :: Pg中的手动事务管理

我正在努力让手动交易按照DBD :: Pg中的说明工作,或者我只是误解了所述文档.

我的理解是,如果我想手动管理事务,我应该关闭AutoCommit.

$dbh->{AutoCommit} = 0;
$dbh->begin_work;
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,我会遇到连续的错误

DBD::Pg::db begin_work failed: Already in a transaction
Run Code Online (Sandbox Code Playgroud)

要使其工作,我需要首先打开AutoCommit.

$dbh->{AutoCommit} = 1;
$dbh->begin_work;
Run Code Online (Sandbox Code Playgroud)

但这似乎与任何文档都不一致.

我只是误解了吗?

postgresql perl dbi dbd-pg

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

HTTPS通过代理完全加密,包括SSL CONNECT

我正在尝试立即测试期望SSL握手的代理,即使客户端将使用SSL CONNECT方法.问题是我的Golang和Python测试代码似乎都有相同的缺陷.它们以明文形式连接到代理,然后发出CONNECT,但代理拒绝这一点,因为它期待SSL握手.

有谁知道如何使用可用的标准库强制任何技术使用SSL到代理?

谢谢.

示例代码如下:

#!/usr/bin/python

try:
    import urllib2

    proxy = urllib2.ProxyHandler({'https': "myproxyip:6881"})
    opener = urllib2.build_opener(proxy)
    urllib2.install_opener(opener)
    print urllib2.urlopen('https://www.google.ca').read()

except Exception as err:
    print err


try:
    import httplib

    c = httplib.HTTPSConnection('myproxyip', 6881)
    c.set_tunnel('google.ca', 443)
    c.request('GET', '/')
    res = c.getresponse()
    print res.status, res.reason

except Exception as err:
    print err
Run Code Online (Sandbox Code Playgroud)

和golang

// vim: ft=go ts=4 sw=4 et ai:
package main

import (
    "net/http"
    "log"
    "io/ioutil"
    "time"
    "crypto/tls"
    "net/url"
    )

var use_proxy = true
var proxy = "https://myproxyip:6881"
var req_url = "https://google.ca"
var …
Run Code Online (Sandbox Code Playgroud)

python ssl https proxy go

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

ng-click不会触发javascript全局函数

我是AngularJS的新手,我点击ng-repeat生成的单选按钮,点击事件拒绝触发.如果我使用简单的onclick,那确实有效.

这有效,我看到警报:

<div class="span2 left-justify"
        ng-repeat="choice in physicalmode_choices">
    <input type="radio"
            name="physical_layer"
            value="{{ choice.private }}"
            onclick="alert('foo')"
            required
            ng-model="$parent.networkoptions.physicalmode" />
            &nbsp;<span ng-bind="choice.public"></span>
</div>
Run Code Online (Sandbox Code Playgroud)

但这不是:

<div class="span2 left-justify"
        ng-repeat="choice in physicalmode_choices">
    <input type="radio"
            name="physical_layer"
            value="{{ choice.private }}"
            ng-click="alert('foo')"
            required
            ng-model="$parent.networkoptions.physicalmode" />
            &nbsp;<span ng-bind="choice.public"></span>
</div>
Run Code Online (Sandbox Code Playgroud)

我不能用ng-click做到这一点吗?或者我误解了"表达"是什么?

谢谢,迈克

javascript angularjs

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

DBD :: Pg :: st执行失败:ERROR:语法错误在"$ 1"或附近

尝试使用Perl和DBI在PostgreSQL中设置一个值,从而设置DBD :: Pg.

我收到一个奇怪的错误.

2013-05-23 19:02:36.641139500 updating status to 0
2013-05-23 19:02:36.641410500 DBD::Pg::st execute failed: ERROR:  syntax error at or near "$1"
2013-05-23 19:02:36.641418500 LINE 1: UPDATE instances SET $1 = $2
2013-05-23 19:02:36.641423500                              ^ at /usr/lib/perl5/vendor_perl/Mitel/MslRest/mbg.pm line 161.
2013-05-23 19:02:36.642425500 [Thu May 23 19:02:36 2013] [error] DBD::Pg::st execute failed: ERROR:  syntax error at or near "$1"
2013-05-23 19:02:36.642438500 LINE 1: UPDATE instances SET $1 = $2
2013-05-23 19:02:36.642443500                              ^ at /usr/lib/perl5/vendor_perl/Mitel/MslRest/mbg.pm line 161.
2013-05-23 19:02:36.642447500
Run Code Online (Sandbox Code Playgroud)

相关代码是

my $sql = …
Run Code Online (Sandbox Code Playgroud)

linux postgresql perl dbi

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

matplotlib中的axes.fmt_xdata未被调用

我正在尝试在Django应用程序中格式化我的X轴日期,我在返回响应对象的内存中的图形.我按照我已在ipython笔记本中使用的相同示例执行此操作:

def pretty_date(date):
    log.info("HELLO!")
    return date.strftime("%c")

def image_calls(request):
    log.info("in image_loadavg")

    datetimes = []
    calls = []
    for m in TugMetrics.objects.all():
        datetimes.append(m.stamp)
        calls.append(m.active_calls)

    plt.plot(datetimes, calls, 'b-o')
    plt.grid(True)
    plt.title("Active calls")
    plt.ylabel("Calls")
    plt.xlabel("Time")

    fig = plt.gcf()
    fig.set_size_inches(8, 6)
    fig.autofmt_xdate()

    axes = plt.gca()
    #axes.fmt_xdata = mdates.DateFormatter("%w %H:%M:%S")
    axes.fmt_xdata = pretty_date

    buf = io.BytesIO()
    fig.savefig(buf, format='png', dpi=100)
    buf.seek(0)
    return HttpResponse(buf, content_type='image/png')
Run Code Online (Sandbox Code Playgroud)

图表被返回,但我似乎无法控制X轴的外观,以及我的HELLO!永远不会调用日志.请注意,m.stamp是一个日期时间对象.

这在ipython笔记本中运行良好,都运行matplotlib 1.4.2.

帮助赞赏.

python django matplotlib

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

ctrl-z挂起tmux内的vim不起作用

因此,我正在使用来自GNU屏幕的tmux。Vim是我的首选编辑。通常,我发现使用Ctrl+ Z怀疑Vim进入我的外壳很有用。我很容易在屏幕上做到这一点。在这里,我的前缀键反弹到Ctrl+ Z,因此按Ctrl+ Z+会Z向Vim发送一个SIGSTOP,并且我在外壳中。一个简单的“ fg”会让我跳回原处,而无需离开屏幕。

现在,在tmux中,这对我不起作用。我尝试了默认的Ctrl+ B前缀,重新绑定到Ctrl+ Z并取消绑定tmux中的z“ toggle panel zoom”选项,以防发生冲突。唯一有效的方法是单击Prefix-Ctrl-Z将SIGSTOP发送到tmux,将其挂起,但我不希望这样做。我希望SIGSTOP转到Vim。

我在Debian Jessie上使用i3作为我的窗口管理器,但是我找不到任何冲突的键绑定,因此我对如何使它起作用的建议持开放态度。

谢谢。

vim shell debian tmux

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

如何使用TR1在Mac OS上编译C ++

我有一个基于Linux的现有产品,并且正在尝试将其移植到Mac OS。

msoulier@merlin:~$ xcode-select -v
xcode-select version 2343.
msoulier@merlin:~$ g++ -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.3.0 (clang-703.0.29)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Run Code Online (Sandbox Code Playgroud)

问题在于它使用了tr1 / tuple库,由于某种原因,它不在默认的include路径中。

msoulier@merlin:~$ ls /usr/include/c++/4.2.1/tr1/tuple
/usr/include/c++/4.2.1/tr1/tuple
Run Code Online (Sandbox Code Playgroud)

这样就可以了,应该在基于上述--with-gxx-include-dir选项的include路径中,

但是

msoulier@merlin:~$ cat hello.cpp
#include <iostream>
#include <tr1/tuple>

using namespace std;

int main(void) {
    cout << "Hello, World!" << endl;
    return 0;
}
msoulier@merlin:~$ g++ -o hello hello.cpp
hello.cpp:2:10: fatal error: 'tr1/tuple' file not found
#include <tr1/tuple>
        ^
1 error generated.
Run Code Online (Sandbox Code Playgroud)

为什么这不行呢?

谢谢。

c++ macos xcode tr1

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

标签 统计

dbi ×2

perl ×2

postgresql ×2

python ×2

angularjs ×1

c++ ×1

dbd-pg ×1

debian ×1

django ×1

go ×1

https ×1

javascript ×1

linux ×1

macos ×1

matplotlib ×1

proxy ×1

shell ×1

ssl ×1

tmux ×1

tr1 ×1

vim ×1

xcode ×1