小编dud*_*ein的帖子

Django:在其他装饰器中重用login_required装饰器

根据我同意的/sf/answers/610105331/中的一条评论,我们应该避免多个装饰器,如果一个取决于另一个.

因此,在示例中,如果我们为活动用户提供了一个装饰器"active_required",我们就不必在同一视图上同时使用active_required和login_required.

我们应该在"active_required"中以某种方式"调用""login_required"装饰器.

是否可以使用django附带的标准"login_required"装饰器来完成它?

我的要求是:1)如果用户未经过身份验证,我应该将他重定向到LOGIN_URL 2)如果用户已通过身份验证(通过login_required),但未激活,我应该将其重定向到"重新激活"他的页面帐户3)如果用户经过身份验证并处于活动状态,则用户可以访问该视图

提前致谢

django decorator login-required

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

Django ORM:如何根据注释 timedelta 结果进行过滤

我有一个这样的模型:

class Interval(models.Model):
   start = models.Datetime()
   end = models.Datetime(null=True)
Run Code Online (Sandbox Code Playgroud)

我想查询所有大于 5 分钟的间隔。我能做到intervals=Interval.objects.exclude(end=None).annotate(d=models.F("end")-models.F("start"))

当我这样做时intervals[0].d,我有时间间隔,这是正确的。现在我只想得到d超过 5 分钟的条目作为结果。

我尝试过intervals=Interval.objects.exclude(end=None).annotate(d=models.F("end")-models.F("start")).filter(d__gt=timedelta(0, 300)),但出现以下错误:TypeError: expected string or bytes-like object。它尝试将时间增量与日期时间的正则表达式进行匹配。`

有任何想法吗?

提前致谢

django orm django-queryset

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

对于MySQL的'where col in(list)'的替代方案

嗨,我有下表T:

id    1   2    3    4
col   a   b    a    c
Run Code Online (Sandbox Code Playgroud)

我想做一个select,当group(col)有count(col)> 1时返回id,col

一种方法是

SELECT id,col FROM T 
   WHERE col IN (SELECT col FROM T GROUP BY(col) HAVING COUNT(col)>1);
Run Code Online (Sandbox Code Playgroud)

实习生选择(从右侧)返回'a',主要的一个(左)将返回1,a和3,a

问题是where语句似乎非常慢.在我的实际情况中,内部选择的结果有很多'col',约70000,而且需要几个小时.

现在,进行内部选择和主要选择获得所有ID和upcs并在本地进行交叉要快得多.MySQL应该能够有效地处理这种查询.

我可以将其中的内容替换为联接或更快的内容吗?

谢谢

mysql where

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

无法将 hstore 扩展安装到新创建的架构中

我有一个安装了 postgres 9.5 的 ubuntu 18.04 。

我的数据库“mydb”安装了 hstore。当我执行“\dx store”时,我确实有

List of installed extensions
  Name  | Version | Schema |                   Description                    
--------+---------+--------+--------------------------------------------------

hstore | 1.3     | public | data type for storing sets of (key, value) pairs
(1 row)
Run Code Online (Sandbox Code Playgroud)

当我使用某个备份文件执行 pg_restore 时,会创建一个也称为“mydb”的新模式,但它不包含“hstore”扩展名。“\dx”命令的结果是相同的。hstore 已经在我的 template1 中了。

pg_restore 失败并显示

pg_restore:[archiver(db)]无法执行查询:错误:类型“hstore”不存在

谁能指出问题出在哪里?

谢谢

postgresql pg-restore hstore

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

如何在MySQL中更新具有不同值的多行?

我有一个列'A'的表.有些行有14位数字用于"A"列,有些行只有12位.我需要将所有条目转换为14位数.数据类型是varchar

我想一次更新所有行(一个查询),在第一个数字之前添加零,所以像012345678910这样的条目将变为00012345678910.

是否可以在一个查询中执行此操作?谢谢

mysql sql rows sql-update

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

Django Crispy Forms:用图像替换标签和单选按钮

我有一个表单,其中某个字段是一个有3个选项的无线电选择器.让我们说这代表好,多或少,坏.

我设法将它们与InlineRadio放在同一行,如下所示:

self.helper.layout = Layout(InlineRadio(field_name))
Run Code Online (Sandbox Code Playgroud)

现在,我需要做两件事:

1)替换每个选项,该选项呈现为单选按钮及其带有预定义图像的标签.

2)添加2个图像,一个在单选按钮的左侧和一个右侧.所以,最后,我将连续拍摄5张图片.从左到右:Image of Smile (just the image)- Image of selector (Good)- Image of selector (More-or-Less)- Image of selector (Bad)- Image of Sad face (just the image)

是否有可能用django-crispy实现它们?如果没有,我怎么能实现这个目标?

提前致谢.

forms django-forms radio-button django-crispy-forms

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

在循环中使用Python中的set

我在Python中有以下列表:

[[1, 2], [3, 4], [4, 6], [2, 7], [3, 9]]
Run Code Online (Sandbox Code Playgroud)

我想将它们分组 [[1,2,7],[3,4,6,9]]

我这样做的代码如下所示:

l=[[1, 2], [3, 4], [4, 6], [2, 7], [3, 9]]
lf=[]
for li in l:
    for lfi in lf:
        if lfi.intersection(set(li)):
            lfi=lfi.union(set(li))
            break
    else:
        lf.append(set(li))
Run Code Online (Sandbox Code Playgroud)

如果是我的最终名单.我在l和lf上做了一个循环,当我找到l和lf中的另一个元素之间的交集时,我想合并它们(union)

但我无法弄清楚为什么这不起作用.列表l的第一个元素正在使用append命令插入,但联合不起作用.我的最终名单看起来像[set([1, 2]), set([3, 4])]

它似乎是非常基本的东西,但我不熟悉套装.我感谢任何帮助

谢谢

python dataset

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

推送mercurial中央存储库中的更改会更改所有者和组

我有一个中央存储库和3个用户本地存储库,可以将代码拉到中央存储库.

我有一个已定义的用户hg和一个名为hgusers的组,所有3个用户都属于该组.

每次用户推送代码时,一些目录和文件都会将其所有者和组分别从hg和hguse更改为userName和userGroup,这使其他人无法推送代码.所以,我必须做chown和chgrp才能返回到最初的情况.

以下是关于用户和组的理想情况:

drwxrwxr-x 3 hg hgusers 4.0K 2010-09-23 08:06 .
drwxrwxr-x 3 hg hgusers 4.0K 2010-07-29 19:06 ..
-rw-rw-r-- 2 hg hgusers   57 2010-07-21 10:08 00changelog.i
-rw-rw-r-- 1 hg hgusers   94 2010-09-23 08:06 branchheads.cache
-rw-rw-r-- 2 hg hgusers   23 2010-07-21 10:08 requires
drwxrwxr-x 3 hg hgusers 4.0K 2010-09-23 08:06 store
-rw-rw-r-- 1 hg hgusers    7 2010-09-23 08:06 undo.branch
-rw-rw-r-- 1 hg hgusers    0 2010-09-23 08:06 undo.dirstate
Run Code Online (Sandbox Code Playgroud)

这是user1(group1)推送代码时得到的结果:

drwxrwxr-x 3 hg    hgusers 4.0K 2010-09-22 16:58 .
drwxrwxr-x 3 hg …
Run Code Online (Sandbox Code Playgroud)

permissions mercurial

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

Django中的通用ListView中的多个模板

我有一个对象列表,可以看作是一个单独的页面或另一个页面(虽然ajax).

所以,在我的模板中,我有一个"list_template.html",它只有列表本身,当我在另一个页面中查看列表时使用,以及"full_list_template.html",它扩展了基本模板并使用了"include"标签包含"list_template".

我想使用相同的URL来获取两种情况下的项目列表.我还使用通用ListView来显示对象列表.

几个问题:

1)在两种情况下使用相同的URL是一种好方法吗?

2)如果是,我怎样才能有一个与ListView相关联的URL并根据"请求"更改template_name参数?

django django-templates django-generic-views

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

无法使用Fabric在远程Virtualenv中使用pip安装软件包

我使用fabric来使用virtualenv部署应用程序.我上周使用的是面料1.4并升级到1.5.1.我的脚本停止了工作.

它无法安装要求.它似乎没有激活virtualenv.在我的代码中,我有:

with cd('%(path)s' % env):
        with prefix('source bin/activate'):
            run('pip install -U distribute')
Run Code Online (Sandbox Code Playgroud)

我收到了一个权限被拒绝的错误: error: could not delete '/usr/local/lib/python2.7/dist-packages/pkg_resources.py': Permission denied

正在执行的命令是:

Executed: /bin/bash -l -c "cd /var/www/myproject && source bin/activate && export PATH=\"\\$PATH:\\"/var/www/myproject\\" \" && pip install -U distribute"
Run Code Online (Sandbox Code Playgroud)

如果我ssh到远程机器并运行cd /var/www/myproject && source bin/activate && pip install -U distribute,它的工作正常.

为什么我的面料脚本不起作用?

提前致谢

deployment virtualenv fabric

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

Google Analytics核心报告API Python库

我正在开始查看Google Analytics核心报告API,该API现已发布于版本3.

根据文档,我可以使用链接http://code.google.com/apis/analytics/docs/gdata/v3/gdataLibraries.html中列出的一个客户端库.

我正在使用python,所以我在寻找在python中使用核心报告API的示例,但我找不到使用这个库的人.http://code.google.com/p/google-api-python-client/wiki/SampleApps上的所有示例都不包含Core Reporting API的示例.

另一种选择似乎是使用该库在http://code.google.com/p/gdata-python-client/,但我不知道该库使用核心API报告的最新版本(3.0版).

我正在寻找符合http://code.google.com/apis/analytics/docs/gdata/v3/reference.html的python库(包含文档/示例)

谢谢

python gdata-api google-analytics-api

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

Magento:如何将登录用户重定向到主页

我正在使用Magento 1.7,我想在登录主页后重定向所有客户端.

我正在使用扩展程序将网站关闭到未登录的用户.我没有使用默认登录页面,而是使用带有Facebook连接按钮的CMS页面.

现在,在用户使用facebook登录后,magento正在加载没有facebook连接按钮的同一页面.

我见过这个帖子,但没有找到AccountManager来修改它.它在哪里?此外,我不确定这是否可行,因为我的情况下的重定向不是发生在客户的仪表板上,而是发生在我创建的cms页面上.

如何(以及在​​代码中的哪个位置)我可以检查用户是否已登录并将他/她重定向到主页?

提前致谢

redirect login magento

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