小编Nat*_*eed的帖子

用于运行单元测试的Python包结构,setup.py

我不确定我是正确地组织我的包结构还是在setup.py中使用正确的选项,因为我在尝试运行单元测试时遇到错误.

我有这样的结构:

/project
   /bin
   /src
       /pkgname          
           __init__.py
           module1.py
           module2.py
   /tests
       __init__.py
       test1.py
       test2.py
Run Code Online (Sandbox Code Playgroud)

我的setup.py看起来像这样:

#!/usr/bin/env python                                                                                                                                        
from setuptools import setup, find_packages

setup(version='0.1',
      description='Trend following library',
      author='Nate Reed',
      author_email='nate@natereed.com',
      packages=find_packages(),
      install_requires=['numpy'],
      test_suite="tests",                          
)
Run Code Online (Sandbox Code Playgroud)

当我运行'python setup.py test'时,我得到:

nate@nate-desktop:~/PycharmProjects/trendfollowing$ sudo python setup.py test
running test
running egg_info
writing requirements to UNKNOWN.egg-info/requires.txt
writing UNKNOWN.egg-info/PKG-INFO
writing top-level names to UNKNOWN.egg-info/top_level.txt
writing dependency_links to UNKNOWN.egg-info/dependency_links.txt
reading manifest file 'UNKNOWN.egg-info/SOURCES.txt'
writing manifest file 'UNKNOWN.egg-info/SOURCES.txt'
running build_ext
Traceback (most recent call last):
  File "setup.py", line 11, in <module> …
Run Code Online (Sandbox Code Playgroud)

python testing setuptools

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

如何让Spring WebServices记录所有SOAP请求?

我需要记录所有SOAP请求CommonLogFormat(请参阅http://en.wikipedia.org/wiki/Common_Log_Format),加上持续时间(处理请求所需的时间).

最好的方法是什么?看起来可以为Spring WebServices配置log4j,但它会记录我感兴趣的所有值吗? http://pijava.wordpress.com/2009/12/04/spring-webservice-soap-requestresponse-logging-with-log4j/

编辑:我们实际上是在使用SLF4J,而不是Log4j.此外,看起来可以通过配置PayloadLoggingInterceptor来实现这一点:http://static.springsource.org/spring-ws/site/reference/html/server.html#server-endpoint-interceptor

但我不确定日志消息的去向.我向拦截器添加了拦截器,但没有看到任何日志消息.

java spring soap web-services spring-mvc

41
推荐指数
6
解决办法
8万
查看次数

ECS无法承担角色

从控制台,我正在调用一个提交批处理作业的lambda.批处理作业失败,表示ECS无法承担为执行作业定义而提供的角色.

对于角色,我添加了lambda和ECS服务.

错误消息:

"ECS无法承担为此任务提供的角色'arn:aws:iam :: 749340585813:role/golfnow-invoke-write-progress'.请验证传递的角色是否具有正确的信任关系和权限,以及你的IAM用户有权传递这个角色."

"TrainingJobRole": {
  "Type": "AWS::IAM::Role",
  "Properties": {
    "RoleName": "golfnow-invoke-write-progress",
    "AssumeRolePolicyDocument": {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "Service": [
              "lambda.amazonaws.com",
              "ecs.amazonaws.com"
            ]
          },
          "Action": [
            "sts:AssumeRole"
          ]
        }
      ]
    },
    "Path": "/"
  }
}
Run Code Online (Sandbox Code Playgroud)

批处理作业:

    "TrainingJob": {
  "Type": "AWS::Batch::JobDefinition",
  "Properties": {
    "Type": "container",
    "JobDefinitionName": {
      "Fn::Sub": "c12e-golfnow-${Environment}-job"
    },
    "ContainerProperties": {
      "Image": {
        "Fn::Join": [
          "",
          [
            "{{ image omitted }}",
            {
              "Ref": "AWS::Region"
            },
            ".amazonaws.com/amazonlinux:latest"
          ]
        ]
      },
      "Vcpus": 2,
      "Memory": 2000, …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-batch aws-ecs

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

Git:文件"已更改但未更新"

什么"改变但没有更新意味着什么"?这些文件是git,它们已被修改,但是当我运行"git status"时,这些更改显示在"已更改但未更新"下,而不是"要提交的更改".

# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
# modified:   breakouts/views.py
#
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified:   templates/registration/login.html
# modified:   templates/registration/registration.html

# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
# context_processors.py
# static/#css.css#
Run Code Online (Sandbox Code Playgroud)

既然他们已经被添加,他们为什么不"改变承诺"?

git

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

渲染时的NoReverseMatch:反转''django.contrib.auth.views.login''

我正在使用Django的身份验证,在login.html模板中,以下语句生成错误:

{% url 'django.contrib.auth.views.login' %}
Run Code Online (Sandbox Code Playgroud)

/ login时的TemplateSyntaxError

渲染时捕获NoReverseMatch:反向找到''django.contrib.auth.views.login'',其参数'()'和关键字参数'{}'未找到.

这个网址在我的urls.py中定义:

(r'^login$', 'django.contrib.auth.views.login')
Run Code Online (Sandbox Code Playgroud)

我安装了auth系统:

INSTALLED_APPS = (
    'django.contrib.auth',
...
)
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

authentication django django-authentication django-login

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

Django:无法加载模板标签

我正在使用Django 1.2.1,我在尝试加载模板标签时遇到问题:

{% load mytags %}

TemplateSyntaxError at /myapp/

'mytags' is not a valid tag library: Template library mytags not
found, tried django.templatetags.mytags
Run Code Online (Sandbox Code Playgroud)

它的定义是myproject/myapp/templatetags/mytags.py.

nate@nate-desktop:~/work/django-projects/myproject$ ls myapp/templatetags/
mytags.py  __init.py__
nate@nate-desktop:~/work/django-projects/myproject$ more
myapp/templatetags/mytags.py


from django import template

register = template.Library()

@register.simple_tag
def myclass(request):
    return request.path
Run Code Online (Sandbox Code Playgroud)

我添加了'myapp' INSTALLED_APPS并更新TEMPLATE_LOADERS(根据StackOverflow的建议):

TEMPLATE_LOADERS = (
   'django.template.loaders.filesystem.Loader',
   'django.template.loaders.app_directories.Loader',
   'django.template.loaders.eggs.Loader',
   'django.template.loaders.app_directories.load_template_source',
)
Run Code Online (Sandbox Code Playgroud)

当我启动服务器时,我看到此警告消息:

/usr/local/lib/python2.6/dist-packages/django/template/loaders/eggs.py:4:
UserWarning: Module _mysql was already imported from
/usr/lib/pymodules/python2.6/_mysql.so, but
/usr/lib/pymodules/python2.6 is being added to sys.path
Run Code Online (Sandbox Code Playgroud)

当我尝试在shell中导入我的模块时,我也无法导入它:

>>> from django.templatetags …
Run Code Online (Sandbox Code Playgroud)

tags django templates

24
推荐指数
3
解决办法
2万
查看次数

如何使用url访问Python中的s3文件?

我想写一个Python脚本,它将使用他们的url从s3读取和写入文件,例如:'s3:/ mybucket/file'.它需要在本地和云中运行而不需要任何代码更改.有没有办法做到这一点?

编辑:这里有一些很好的建议,但我真正想要的是允许我这样做的东西:

 myfile = open("s3://mybucket/file", "r")
Run Code Online (Sandbox Code Playgroud)

然后像任何其他文件对象一样使用该文件对象.那真的很酷.如果它不存在,我可能会为自己写这样的东西.我可以在simples3或boto上构建那个抽象层.

python cloud amazon-s3

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

运行迁移时出错:sqlalchemy.exc.CompileError:Postgresql ENUM类型需要名称

当我第一次尝试运行升级时,我遇到了这个错误.它似乎在gender_types枚举上失败了,即使我给它一个名字属性.

有没有解决这个问题?有没有办法看到SQL生成了什么?

这是我的models.py,这是我运行flask.ext.migrate.upgrade时出现的错误.

class User(UserMixin, db.Model):
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True)
    first = db.Column(db.String(64))
    last = db.Column(db.String(64))
    dob = db.Column(db.Date)
    street_addr1 = db.Column(db.String(64))
    street_addr2 = db.Column(db.String(64))
    city = db.Column(db.String(64))
    state = db.Column(db.String(2))
    zip = db.Column(db.String(9))
    gender = db.Column(db.Enum('M', 'F', name='gender_types'))
    home_box = db.Column(db.String(32))
    username = db.Column(db.String(64), unique=True, index=True)
    password_hash = db.Column(db.String(128))

    @property
    def password(self):
        raise AttributeError('password is not a readable attribute')

    @password.setter
    def password(self, password):
        self.password_hash = generate_password_hash(password)

    def verify_password(self, password):
        return check_password_hash(self.password_hash, password)
    def __repr__(self):
        return '<User …
Run Code Online (Sandbox Code Playgroud)

python postgresql sqlalchemy flask

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

如何在tableGrob图中添加标题?

我有一张桌子,我想打印一个标题:

t1 <- tableGrob(top_10_events_by_casualties, cols=c("EVTYPE", "casualties"), rows=seq(1,10))
grid.draw(t1)
Run Code Online (Sandbox Code Playgroud)

这里提出了一个类似的问题:在grid.table图中添加文本

我尝试过类似的东西,它不起作用:

> title <- textGrob("Title",gp=gpar(fontsize=50))
> table <- gtable_add_rows(t1, 
+                          heights = grobHeight(title) + padding,
+                          pos = 0)
Error: is.gtable(x) is not TRUE
Run Code Online (Sandbox Code Playgroud)

r gridextra

8
推荐指数
2
解决办法
9752
查看次数

如何在本地文件系统上为tarball创建pip需求文件?

告诉我,如果我正在尝试做的事情没有意义.

我想创建一个虚拟环境,其中包括MySQLDb 1.2.3.该库作为gzipped tarball(.tgz)文件分发.我想在requirements/apps.txt中的需求文件中安装所有内容 - 包括我本地文件系统上的tarball - 这是基于我在http://thraxil.org/users/anders/posts/2009/06中看到的设置/ 12/Django-Deployment-with-virtualenv-and-pip /):

pip.py install -E ve --enable-site-packages --requirement requirements/apps.txt
Run Code Online (Sandbox Code Playgroud)

我找不到关于本地文件的pip要求文件格式的任何文档.

apps.txt如果目录requirements/包含文件,需要file()需要包含MySQL-python-1.2.3.tgz什么?

python pip virtualenv requirements.txt

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