小编Sar*_*ica的帖子

Sphinx:将xlxs数据包含在rst中

我想要的是将xlxs表(或者说所述文件的数据)包含在Sphinx文档中.

有没有办法将xlxs表转换为restructuredText?

restructuredtext xlsx python-sphinx

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

Python 的 ftplib 和 tq​​dm

我有一个控制台脚本,它使用ftplib作为后端从 ftp 服务器获取大量文件。我想使用tqdm为用户提供一些反馈,前提是他们打开了“详细”开关。这必须是可选的,因为某些用户可能会在没有tty访问权限的情况下使用脚本。

FTPLIBretrbinary方法采用了回调所以它应该有可能钩tqdm在那里莫名其妙。但是,我不知道这个回调会是什么样子。

python ftplib tqdm

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

DurationField格式

我有一个DurationField在我的模型定义

day0 = models.DurationField('Duration for Monday', default=datetime.timedelta)
Run Code Online (Sandbox Code Playgroud)

当我试图查看它时,我希望它格式化为"HH:MM" - 它总是小于24.所以,我在HTML模板文件中尝试了这些:

{{ slice.day0|time:'H:M' }}
{{ slice.day0|date:'H:M' }}
Run Code Online (Sandbox Code Playgroud)

但是,我得到的只是一个空的空间.

我究竟做错了什么?

django django-views

5
推荐指数
2
解决办法
2357
查看次数

年和周号的日期时间

我有一个年和周的数字,我想转换成一个datetime.datetiem对象。我对文档的阅读(天真?)暗示strptime('2016 00', '%Y %W')应该这样做。然而:

In [2]: from datetime import datetime

In [3]: datetime.strptime('2016 00', '%Y %W')
Out[3]: datetime(2016, 1, 1, 0, 0)

In [4]: datetime.strptime('2016 52', '%Y %W')
Out[4]: datetime(2016, 1, 1, 0, 0)
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

python datetime datetime-format

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

服务器必须由拥有数据目录的用户启动

我正在尝试为在 Kubernetes 上运行的 PostgreSQL docker 实例获取一些持久存储。但是,吊舱失败了

FATAL:  data directory "/var/lib/postgresql/data" has wrong ownership
HINT:  The server must be started by the user that owns the data directory. 
Run Code Online (Sandbox Code Playgroud)

这是 NFS 配置:

% exportfs -v
/srv/nfs/postgresql/postgres-registry
        kubehost*.example.com(rw,wdelay,insecure,no_root_squash,no_subtree_check,sec=sys,rw,no_root_squash,no_all_squash)
$ ls -ldn /srv/nfs/postgresql/postgres-registry
drwxrwxrwx. 3 999 999 4096 Jul 24 15:02 /srv/nfs/postgresql/postgres-registry
$ ls -ln /srv/nfs/postgresql/postgres-registry
total 4
drwx------. 2 999 999 4096 Jul 25 08:36 pgdata
Run Code Online (Sandbox Code Playgroud)

来自 pod 的完整日志:

2019-07-25T07:32:50.617532000Z The files belonging to this database system will be owned by user "postgres". …
Run Code Online (Sandbox Code Playgroud)

postgresql nfs docker kubernetes

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

log4j和java.lang.NoClassDefFoundError:org/apache/log4j/Layout

我试图让一段代码与log4j一起工作.如果我通过junit测试(ant任务)运行它,我得到正确的日志输出,一切都很好.如果我从命令行运行代码,我得到这个:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Layout
        at uk.co.bytemark.flexnbd.Main.main(Main.java:29)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Layout
Run Code Online (Sandbox Code Playgroud)

我尝试了以下两个类路径,但都没有帮助.错误仍然存​​在.

  export CLASSPATH=/home/yann/java/apache-log4j-1.2.16/log4j-1.2.16.jar 
  export CLASSPATH=/home/yann/java/apache-log4j-1.2.16/
Run Code Online (Sandbox Code Playgroud)

即便如此

$ java -cp /home/yann/java/apache-log4j-1.2.16/log4j-1.2.16.jar -jar ./dist/lib/flexnbd-`date +%Y%m%d`.jar server ::1 12345 fileSystem
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Layout
        at uk.co.bytemark.flexnbd.Main.main(Main.java:29)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Layout
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        ... 1 more
$ ls -ld /home/yann/java/apache-log4j-1.2.16/log4j-1.2.16.jar
476K -rw-r--r-- 1 yann yann 471K Mar 31 05:16 /home/yann/java/apache-log4j-1.2.16/log4j-1.2.16.jar
Run Code Online (Sandbox Code Playgroud)

知道我做错了什么吗?

java log4j classpath noclassdeffounderror

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

通过数据迁移添加默认标签

我正在使用与taggittreebeard一起使用的分层标签.我正在尝试进行数据迁移,因此我可以定义这样的标记,这些标记将出现在应用程序的所有实例中.

我定义了这个方法:

def define_tags(apps, schema_editor):
    HierarchicalTag = apps.get_model("aion", "HierarchicalTag")
    root = HierarchicalTag.add_root(name='root')
    root.save()
    leaf = HierarchicalTag.objects.get(pk=root.pk).add_child(name='ook')
    leaf.save()
Run Code Online (Sandbox Code Playgroud)

应该创建两个标签"root"和一个子"ook".但是,当我运行迁移时,我收到此错误:

AttributeError: type object 'HierarchicalTag' has no attribute 'add_root'
Run Code Online (Sandbox Code Playgroud)

该方法add_rootMP_Node来自treebeard的类方法.

我怎样才能解决这个问题?

django django-treebeard django-south

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

上下文管理器的模拟失败,出现AttributeError:__ exit__

我正在尝试使用Mock修补一些上下文管理器功能,因此我可以测试代码在给出好,坏和垃圾输入的情况下做出明智的事情.这是包含with声明的测试代码.补丁在我的代码中的正确位置完成.

@patch("__main__.opened_w_error")
def test_get_recipe_file(self, mo):
    mo.return_value = (Mock(), None)
    mo.__enter__ = Mock(return_value=None)
    mo.__exit__ = Mock(return_value=None)
    with mo(…) as (fd, err):  # AttributeError: __exit__ is raised here.
        print(fd)
        print(err)
Run Code Online (Sandbox Code Playgroud)

然而with mo(…) as (fd, err)加薪AttributeError: __exit__.

模拟魔术方法文档说明你应该使用它

with mo as (fd, err):
    …
Run Code Online (Sandbox Code Playgroud)

后一段代码是我试图嘲笑的.但这不是我在代码中使用它的方式.对于那些真正感兴趣的人,我试图在PEP 343中模拟示例6 opened_w_error(),它处理打开文件和捕获错误.因此代码是:

with open_w_error(filename, 'r') as (fd, err):
    …
Run Code Online (Sandbox Code Playgroud)

后者是我想要嘲笑的.

python mocking

4
推荐指数
2
解决办法
6548
查看次数

Jenkinsfile和多个节点

我有一些代码需要tox在不同的OS上运行(实际上是构建,测试和打包,但例如只是在运行)。目前,我的Jenkinsfile样子是这样的:

pipeline {

    // Where to run stuff.
    agent { 
        node {
            label 'CentOS7' 
            customWorkspace '/home/build/jenkins/workspace/pipelines/ook'
        }
    }

    // What to run goes here.
    stages {
        stage('Tox') {
            steps {
                sh 'tox -v --recreate' 
            }
        }
    }

    // Clean up after ourselves.
    post {
        failure {
            mail subject: "\u2639 ${env.JOB_NAME} (${env.BUILD_NUMBER}) has failed",
                    body: """Build ${env.BUILD_URL} is failing!
    Somebody should do something about that\u2026""",
                          to: "devs@example.com",
                     replyTo: "devs@example.com",
                        from: 'jenkins@example.com'
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

中间一点,我想在两种不同的系统上运行nodes …

jenkins jenkins-pipeline

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

如何删除Django中一个且只有一个应用程序的所有数据

我有一个设置(Django 1.11)有几个应用程序,包括 OOK、EEK 和其他不相关的应用程序。我想删除 OOK 的所有数据,同时保持 EEK(和其余数据)不变。理想情况下,我希望所有的主键也被重置,这样第一个新的 OOK 模型就会得到 1,依此类推……

这可能吗?

我能找到的只是resetsqlclear都已弃用。flush从数据库中删除了所有数据,因此不是我想要的

我承认这是一件奇怪的事情,但这是给我的手……

django

4
推荐指数
2
解决办法
1400
查看次数