小编Rob*_*ark的帖子

如何为jsfiddle.net代码片段提供一个人类可读的名称?

在jsfiddle.net中有一种方法可以为代码片段提供一个人类可读的名称吗?

jsfiddle

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

如何在SQLAlchemy中使用多级/多连接指定表关系?

我正在尝试定义两个关系是间接关系的表之间的关系(即通过另外两个表).

我正在寻找的结果可以使用此查询获取:

(db.session.query(Telnum)
           .filter(Account.customer==customer)
           .filter(Account.account_id == Subscription.account_id)
           .filter(Telnum.sub_id == Subscription.id)
           .order_by(Telnum.telnum)
           .all()
)
Run Code Online (Sandbox Code Playgroud)

哪里customer是Customer对象.

我正在努力弄清楚如何定义这种关系,类似于Customer.invoices关系.我有一个想法是这样的:

telnums = db.relationship('Telnum',
                       primaryjoin="and_(Account.user_id==Customer.id, "
                       "Account.account_id == Subscription.account_id, " 
                       "Telnum.sub_id == Subscription.id)", 
                       backref='customer')
Run Code Online (Sandbox Code Playgroud)

正如这篇文章所显示的,这不起作用.它产生的错误信息是: sqlalchemy.exc.ArgumentError: Could not locate any simple equality expressions involving locally mapped foreign key columns for primary join condition 'accounts.user_id = customers.id AND accounts.account_id = subscriptions.account_id AND pstn_numbers.sub_id = subscriptions.id' on relationship Customer.telnums. Ensure that referencing columns are associated with a ForeignKey or ForeignKeyConstraint, or are annotated in …

python sqlalchemy flask flask-sqlalchemy

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

如何判断bash脚本中的任何命令是否失败(非零退出状态)

我想知道bash脚本中的任何命令是否以非零状态退出.

我想要类似于set -e功能的东西,除了当命令以非零状态退出时我不希望它退出.我想让它运行整个脚本,然后我想知道:

a)所有命令以退出状态0退出
-
或- b)一个或多个命令以非零状态退出


例如,给出以下内容:

#!/bin/bash

command1  # exits with status 1
command2  # exits with status 0
command3  # exits with status 0
Run Code Online (Sandbox Code Playgroud)

我想要运行所有三个命令.运行脚本后,我想要一个指示,即至少有一个命令以非零状态退出.

bash exit-code sh exitstatus

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

保存输出:map in vim

Q1:有没有办法保存命令的输出

:map
Run Code Online (Sandbox Code Playgroud)

到文件?

Q2:在相关问题中,我的vimrc文件中有以下地图:

map <f1> :wa<cr>
Run Code Online (Sandbox Code Playgroud)

当我加载一个乳胶文件(我安装了vim-latex插件)时,F1键现在会调用帮助.
有没有办法改变这个,而无需手动再次输入地图?

vim

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

当Django代码更改时,是否需要重新启动uWSGI?

我正在开发一个在nginx和uWSGI下运行的Django webapp.当我部署新的Django代码(例如,settings.py)时,是否需要重新启动uWSGI?如果是这样,为什么?

背景:我有一个场景,我更新了settings.py和其他一些代码并进行了部署.在重新启动uWSGI之前,我没有看到webapp行为的变化.

django nginx uwsgi

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

在Django中组合prefetch_related和annotate

我有三个型号

class ModelA(models.Model):
    name = CharField(max_length=100)

class ModelB(models.Model):
    modela = ForeignKey(ModelA)

class ModelC(models.Model):
    modelb = ForeignKey(ModelB)
    amount = IntegerField()
Run Code Online (Sandbox Code Playgroud)

我可以得到输出

name, number of model c objects
==============
Some name, 312
Another name, 17
Run Code Online (Sandbox Code Playgroud)

使用queryset

ModelA.objects.all().prefetch_related('modelb_set', 'groupb_set__modelc_set')
Run Code Online (Sandbox Code Playgroud)

和模板

{% for modela in modela_list %}
    {% for modelb in modela.modelb_set.all %}
        {{ modelb }}, {{ modelb.modelc_set.count }}
    {% endfor %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

我没有计算连接到每个ModelB对象的ModelC对象的数量,而是想要对ModelC中的amount字段求和.

我不知道如何结合prefetch_relatedannotate在我的查询集,但它必须是这样的

(ModelA.objects.all()
       .prefetch_related('modelb_set', 'groupb_set__modelc_set')
       .annotate(total_amount=Sum('modelc_set__amount')))
Run Code Online (Sandbox Code Playgroud)

django django-templates django-models django-queryset django-views

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

为什么我的vim命令行路径与我的shell PATH不同?

例如,

$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/bin:~/bin:/usr/local/Cellar/python3/3.2.3/bin

$ vim 
:! echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:~/bin:/usr/local/Cellar/python3/3.2.3/bin
Run Code Online (Sandbox Code Playgroud)

我希望它们是一样的.他们为什么不同?

如果它有所不同,这是我的shell,vim版本和操作系统版本:

$ echo $SHELL
SHELL=/usr/local/bin/zsh

$ /usr/local/bin/zsh --version
zsh 5.0.0 (x86_64-apple-darwin12.0.0)

$ vim --version
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Jun 20 2012 13:16:02)
Compiled by root@apple.com


$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.8.2
BuildVersion:   12C60

(Mountain Lion)
Run Code Online (Sandbox Code Playgroud)

vim command-line path

10
推荐指数
2
解决办法
3773
查看次数

Sublime Text:如何在文本搜索中仅显示文件名,或者"全部折叠"结果?

在Sublime Text中进行文本搜索时,有没有办法只显示匹配的文件名,而不显示匹配的实际行和这些行周围的上下文?

我可以遍历每个文件并折叠这些行(鼠标悬停在第一列中的行号和第三列中的文件名之间的列,显示一个箭头图标,单击该箭头图标) - 有没有办法轻松折叠所有他们?

Sublime Text 2,v2.0.1,build 2217

sublimetext2

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

在Django中按月/年注释(组)日期

使用Django DateQuerySet我会itemGroup查询中提取相关年份.

>>> Group.objects.all().dates('item__date', 'year')
[datetime.date(1990, 1, 1), datetime.date(1991, 1, 1), ...(remaining elements truncated)...']
Run Code Online (Sandbox Code Playgroud)

现在我想在这些日期按不同的年份进行计数.我认为这会奏效:

>>> Group.objects.all().dates('item__date', 'year').annotate(Count('year'))
FieldError: Cannot resolve keyword 'year' into field.
Run Code Online (Sandbox Code Playgroud)

但看起来我错过了一些东西.我该如何修复此查询?

我也试过这个查询:

>>> (Group
     .objects
     .all()
     .extra(select=
         {'year': 
          connections[Group.objects.db].ops.date_trunc_sql('year', 'app_item.date')}))
ProgrammingError: missing FROM-clause entry for table "app_item" LINE 1: SELECT (DATE_TRUNC('year', app_item.date)) AS...
Run Code Online (Sandbox Code Playgroud)

但这也不起作用.

django aggregate-functions django-models django-orm

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

如何在pudb中使命令行/解释器窗格/窗口更大?

有没有办法在pudb中调整命令行/解释器窗口/窗格的大小,就像可以调整侧窗格的大小一样?

python pudb

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