小编Bel*_*dez的帖子

试图模拟datetime.date.today(),但不能正常工作

谁能告诉我为什么这不起作用?

>>> import mock
>>> @mock.patch('datetime.date.today')
... def today(cls):
...  return date(2010, 1, 1)
...
>>> from datetime import date
>>> date.today()
datetime.date(2010, 12, 19)
Run Code Online (Sandbox Code Playgroud)

也许有人可以建议一个更好的方法?

python testing datetime mocking

137
推荐指数
12
解决办法
7万
查看次数

Django Admin:仅为一个模型字段使用自定义小部件

我的模型中有一个DateTimeField字段.我想将它显示为Django管理站点中的复选框小部件.为此,我创建了一个自定义表单小部件.但是,我不知道如何将此自定义窗口小部件用于此字段.

Django文档解释了如何使用自定义窗口小部件的所有特定类型的字段:

class StopAdmin(admin.ModelAdmin):
    formfield_overrides = {
        models.DateTimeField: {'widget': ApproveStopWidget }
    }
Run Code Online (Sandbox Code Playgroud)

但这并不够精细.我想只为一个字段更改它.

python django django-forms django-admin django-widget

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

修改subversion文件权限

我看到了这个问题,但它对我没有帮助.我签入了没有可执行权限的文件,现在,每次分支或签出时,该文件都不可执行.

其他一些文件确实保存为可执行文件.我猜这是因为他们在第一次检查时有可执行位 - 至少这是我的测试让我相信的.

有没有人知道修改(甚至至少查看)subversion对文件或文件夹的权限的更好方法?

svn version-control

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

python-pip yum包提供了pip-python而不是pip

我安装了python-pipyum(使用Fedora的更新repo).它虽然没有添加pip脚本PATH.

$ which pip
/usr/bin/which: no pip in
                (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:
                 /usr/bin:/usr/local/sbin:/usr/sbin:/sbin)
Run Code Online (Sandbox Code Playgroud)

但它确实创造了pip-python:

$ rpm -ql python-pip
/usr/bin/pip-python
[...snip...]

$ which pip-python
/usr/bin/pip-python
Run Code Online (Sandbox Code Playgroud)

我正在考虑建立pip一个符号链接,pip-python但有没有一个原因可执行文件的名称pip-python开头?

python fedora distribute

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

Django:获取绝对URL而无需访问请求对象

我有一个类似下面的模型.创建实例时,我想向相关方发送电子邮件:

class TrainStop(models.Model):
    name = models.CharField(max_length=32)
    notify_email = models.EmailField(null=True, blank=True)

def new_stop_created(sender, instance, created, *args, **kwargs):

    # Only for new stops
    if not created or instance.id is None: return

    # Send the status link
    if instance.notify_email:
        send_mail(
            subject='Stop submitted: %s' % instance.name,
            message='Check status: %s' % reverse('stop_status', kwargs={'status_id':str(instance.id),}),
            from_email='admin@example.com',
            recipient_list=[instance.notify_email,]
        )
signals.post_save.connect(new_stop_created, sender=TrainStop)
Run Code Online (Sandbox Code Playgroud)

但是,该reverse调用仅返回URL的路径部分.示例:/stops/9/status/.我需要一个完整的URL http://example.com/stops/9/status/.如何检索当前网站的主机名和端口(对于不使用端口80的测试实例)?

我最初的想法是通过变量使其可用settings.py,然后我可以根据需要访问.但是,有人认为有人可能会提出更强有力的建议.

python django django-signals django-settings

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

Django测试:测试表单字段的初始值

我有一个视图应该是基于GET值为表单字段设置初始值.我想测试一下.我目前正在使用Django的测试客户端,但我愿意看其他工具.

编辑

对不起,我没有提到我很清楚assertContains方法,但我希望除了在HTML中搜索input标签和value属性之外还有更好的方法.

python django django-testing

17
推荐指数
2
解决办法
5625
查看次数

Django测试技巧

根据这个问题的精神,我想知道是否有任何关于为Django webapp创建一个有用的"完整"测试套件(测试套件能否"完整"?)的技巧.

我的情况:我已经淘汰了一个原型,现在我正在努力增加一些回归测试.我个人使用django-webtest进行大多数测试,并使用Django测试客户端进行一些URL测试.

我对我的测试套件感到不舒服.我远非测试专家,所以试图改善这一目标.任何提示 - 无论是否适用于我的情况 - 都将不胜感激.

python testing django unit-testing django-testing

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

测试自定义Django模板过滤器

我有一个我创建的自定义模板过滤器project/app/templatetags.

我想为我刚发现的一些错误添加一些回归测试.我该怎么做呢?

python django django-template-filters

17
推荐指数
2
解决办法
2489
查看次数

Django:如何检查用户是否将所有字段留空(或初始值)?

我知道is_valid()在有界表格上检查是否输入了所有必需的数据.这不是我想要的.我想检查表单上是否填写了任何字段.

有任何想法吗?

阐述:

我想让用户选择不填写表格.但是,如果他们试图填写它(即:从一个字段中改变一个值,从它的初始值---通常为空值),我想验证它.

视图将是这样的:

def get_opinion(request):

    if request.method == 'POST':
        f = OpinionForm(request.POST)
        if form_is_blank(f):
            return HttpResponseRedirect(reverse('thank_you_anyway'))
        elif f.is_valid():
            #Process here
            return HttpResponseRedirect(reverse('thanks_for_participating'))
    else:
        initial = {'weekday': date.today().strftime('%A')}
        f = OpinionForm(initial=initial)

    return render_to_response(
        'get_opinion.html',
        {'form': f,},
        RequestContext(request)
    )
Run Code Online (Sandbox Code Playgroud)

我想要的是这form_is_blank()部分.

python django django-forms

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

pip:不一致的权限问题

通过sudo pip-python(CentOS 6软件包:) 安装软件包时python-pip-0.8-1.el6.noarch,我有时会遇到权限问题,安装的软件包只能由root读取.

重新安装一次或两次通常可以解决问题.有没有人经历过这个?或者,任何人都可以建议任何故障排除步骤来确定原因吗?

python centos pip python-module

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