小编Non*_*-da的帖子

有关基于Django项目的A/B测试的想法吗?

我们刚刚开始为基于Django的项目进行A/B测试.我是否可以获得有关此A/B测试的最佳实践或有用见解的一些信息.

理想情况下,每个新的测试页面都将使用单个参数进行区分(就像Gmail一样).mysite.com/?ui=2应该给出不同的页面.因此,对于每个视图,我需要编写一个装饰器来根据'ui'参数值加载不同的模板.而且我不想在装饰器中硬编码任何模板名称.那么urls.py url模式将如何?

testing django ab-testing

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

使用Django向手机发送短信

我正在构建一个应用程序,我有这个小调查模块,它向我给出的电话号码发送一个简单的短信,并且必须收集响应(如果用户触发它)并显示给我.我正在使用django构建我的项目.我尝试过django-sms谷歌代码项目,但我无法将消息从手机发回给我的服务器.我浏览了很多关于短信网关/运营商的教程.但我迷路了.任何人都可以帮我建议一个关于从我的应用程序(django)发送短信到任何手机的教程吗?关于将短信发送到手机,它会花费我(就像我如何将短信从一部手机发送到另一部手机)?

django sms mobile-phones mobile-website

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

使用python脚本以超级用户身份运行linux系统命令

我已经在我的机器上安装了postfix,我正在以编程方式(使用python)动态更新virtual_alias(在某些操作上).一旦我更新/ etc/postfix/virtual_alias中的条目,我就运行命令:

sudo /usr/sbin/postmap /etc/postfix/virtual_alias 2>>/work/postfix_valias_errorfile
Run Code Online (Sandbox Code Playgroud)但是我收到了错误:
sudo: sorry, you must have a tty to run sudo
Run Code Online (Sandbox Code Playgroud)

我想以非人类的方式运行提到的sudo命令(意思是,我从python脚本运行这个系统命令.).那么如何以编程方式运行此命令?

python linux sysadmin sudo root

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

每次出现新邮件时,都希望procmail运行自定义python脚本

我对procmail有一个非常常见的要求,但我无法以某种方式获得结果.我有这个内容的procmailrc文件:

:0
* ^To.*@myhost
| /usr/bin/python /work/scripts/privilege_emails_forward.py
Run Code Online (Sandbox Code Playgroud)

其中我的自定义python脚本(privilege_emails_forward.py)将扫描当前收到的电子邮件,并对邮件内容进行一些操作.但是我无法在第一次拍摄时执行脚本(更不用说扫描邮件内容了).

  • 这是一个新邮件到达时调用外部程序(python)的正确方法吗?
  • 我的python程序(privilege_emails_forward.py)将如何接收邮件作为输入?我的意思是作为sys.argv或stdin ????

python email procmail

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

电子邮件正文有时是一个字符串,有时也是列表.为什么?

我的应用程序是用python编写的.我正在做的是我在postfix收到的每封电子邮件上运行一个脚本,并对电子邮件内容做一些事情.Procmail负责运行以电子邮件作为输入的脚本.当我将输入消息(可能是文本)转换为email_message对象(因为后者派上用场)时,问题就出现了.我正在使用email.message_from_string(其中email是默认的电子邮件模块,随python一起提供).

import email message = email.message_from_string(original_mail_content) message_body = message.get_payload()

这个message_body有时返回一个列表[email.message.Message实例,email.message.Message实例],有时返回一个字符串(传入电子邮件的实际正文内容).为什么.甚至我发现了另外一个观察.当我浏览email.message.Message.get_payload()文档字符串时,我发现这个..
"""有效负载将是列表对象或字符串.如果您改变列表对象,则修改消息的有效负载地点....."""

那么如何通过python获取电子邮件正文的通用方法呢?请帮帮我.

python email message payload

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

我可以使用python默认库集加密电子邮件并将其解密吗?

当然,在stackoverflow中已经提出类似的问题,但我不想使用像Crypto之类的任何第三方库.所以我需要从用户电子邮件生成密文并将其解密回明文.我怎么能在python中这样做?

python encryption

7
推荐指数
2
解决办法
3053
查看次数

从Django眼中了解Zope内部

我是zope的新手,之前我在Django工作了大约2.5年.因此,当我第一次跳入Zope(第2版)时(仅因为我的新公司7年来一直使用它),我遇到了这些问题.请帮助我理解它们.

  1. zodb的"真正"目的是什么?我知道它做了什么,但告诉我zodb做的​​一件好事和像Django(没有zodb)这样的框架未命中.

    更新:根据答案,Zodb取代了对ORM的需求.您可以直接将对象存储在db(zodb本身)中.

  2. 据说,zope的杀手功能之一是TTW(通过网络或使用ZMI开发)的理念.但我(和任何开发人员)更喜欢基于文件系统的开发(使用Version控件,使用Eclipse,使用Zope之外的任何喜欢的工具).那TTW实际上在哪里使用?

  3. 这是一个很大的问题.与Python/Django继承相比,Zope的Acquistion获得了什么"EXTRA Stuff".

  4. 来自Django的Zope真的是一个很好的举动吗?

  5. 任何网站如djangosnippets.org for Zope(v2)?

python django zope zodb acquisition

7
推荐指数
4
解决办法
2871
查看次数

在(和多个操作系统)上创建Python分发(egg)的最佳实践是什么?

我们是一家蟒蛇店.我们在内部开发了不同的python包,并将部署到客户的环境(机器)上.

这就是我们的开发和发布周期的发生方式.

一旦开发人员完成对包的"测试",就准备包的分发(egg文件)并将其推送到中央存档位置.当我们想要将我们的软件部署到客户时,将在其环境中下载和安装相同的发行版(egg文件).

假设"测试"发生在多个操作系统上(为了检查跨平台的API的兼容性),准备发行版的最佳实践是什么,并被推送到中央归档位置.

是否最好在归档服务器上安装特定于操作系统的鸡蛋(例如,samplepkg-1.0.0.win32.egg和samplepkg-1.0.0.linux.egg?不确定如何使用setuptools以这种方式准备它们.)或者有一个鸡蛋,因为API在各个平台上保持不变?社区遵循的任何其他做法?

python egg setuptools software-packaging

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

Flup中未处理的异常

我正面临着Flup提出的可怕的"未处理的异常".可悲的部分是它在webserver(lighttpd + flup)级别而不是在应用程序级别(Django).所以没有提出关于问题所在的500封电子邮件.

我们整个团队努力清理代码库,包括任何暧昧的进口和某种类型的东西,只是为了消除由于模糊的进口引起错误的机会.我们在代码中清理了很多东西.仍然是同样的例外.

坦率地说,我对Flup的错误处理感到非常沮丧.它没有告诉你任何事情.最糟糕的是,它向用户显示了相同的"未处理的例外".我如何通过这个?

我检查了lighttpd日志.我只看到"接口错误/连接已经关闭".它只发生在我的应用程序在FCGI模式下运行时.所以问题在于flup实际上是如何处理我的代码(应用程序)的.我如何通过这个?

我检查了flup的替代方案,但是Django明确地依赖于flup(这是一个限制,并让我困惑)(参考:django_src/django/core/servers/fastcgi.py line:100/131)

如何调试(至少)此方案并解决问题?请帮帮我.申请已经停止了3天.

django error-handling middleware fastcgi flup

6
推荐指数
3
解决办法
4017
查看次数

Git:无法理解为什么分支(主题)提交/合并正在主分支上发生

注意:我不确定是否已经提出过这个问题,因为我找不到适合我的背景的任何问题(或者我无法理解现有问题'背景')

这些天我很喜欢Git.特别是,主题分支.我正在开发一个小代码共享应用程序.我有(本地)分支,如"主","认证","书签","评论","鼻子"等...

我的(预期)工作流程如下所示:创建主题分支==>在主题分支上工作==>将文件提交到分支==>将主题分支更改合并到"主"分支.(后来删除主题分支)

我试过为几个分支做同样的事情.它工作正常.但后来当我检查git图时,即使我遵循相同的工作流程,所有机会都发生在"主人"上.没有树线分叉和会聚!它显示了一条带有多个提交的单线.我不知道为什么?我的印象是,我用HEAD指针搞砸了什么?

为了给出实用的观点,这是我的git图:http://github.com/none-da/zeshare/network

以下是我使用的命令:

>> git branch authentication_feature
>> git checkout authentication_feature
>> # I work with all the files here in "authentication_feature" branch
>> git commit -m "Authentication_feature is up" # commiting to the branch
>> git branch # just to confirm, which branch I am working on
>> git checkout master # trying to shift to master branch
>> git merge --no-commit authentication_feature # I merge in two steps. This is step 1 …
Run Code Online (Sandbox Code Playgroud)

git merge branch commit github

6
推荐指数
2
解决办法
1220
查看次数