这是我.gitmodules文件内容的一部分:
[submodule "src/static_management"]
path = src/static_management
url = git://github.com/eykd/django-static-management.git
[submodule "external/pyfacebook"]
path = external/pyfacebook
url = http://github.com/sciyoshi/pyfacebook.git
Run Code Online (Sandbox Code Playgroud)
但是,.git/config只包含第一个:
[submodule "src/static_management"]
url = git://github.com/eykd/django-static-management.git
Run Code Online (Sandbox Code Playgroud)
第二个子模块(external/pyfacebook)由功能分支中的另一个开发人员添加.我现在继承了开发,并检查了功能分支.但是,Git不会为我拉这个子模块.我试过了:
git submodule initgit submodule updategit submodule update --initgit submodule sync.git/config并运行git submodule init.它只复制先前存在的子模块并忽略新的子模块..git/config手动输入新的子模块定义并运行git submodule update.只有以前存在的子模块才能更新.在各种组合中,但是git根本不会.git/config根据新内容进行更新.gitmodules,也不会创建external/pyfacebook文件夹并拉出子模块的内容.
我错过了什么?手动干预(手动添加子模块条目.git/config)是否真正需要,为什么?
编辑:手动干预不起作用.手动添加新的子模块条目.git/config不会做任何事情.新的子模块被忽略.
Nginx使用什么正则表达式引擎?有很多可能性.更重要的是,它支持什么样的语法,也就是说,我可以使用哪些语法功能?
这与你可以使用Python生成器函数有什么相反?:python生成器,生成器表达式和itertools模块是我最近python的一些特性.它们在设置操作链以在大量数据上执行时特别有用 - 我经常在处理DSV文件时使用它们.
那么什么时候不是使用生成器,生成器表达式或itertools函数的好时机?
zip()过itertools.izip(),或range()结束xrange(),或[x for x in foo]结束(x for x in foo)?显然,我们最终需要将生成器"解析"为实际数据,通常是通过创建列表或使用非生成器循环对其进行迭代.有时我们只需知道长度.这不是我要问的.
我们使用生成器,因此我们不会将新列表分配给内存以用于临时数据.这对于大型数据集尤其有用.对于小型数据集也有意义吗?有明显的内存/ CPU权衡吗?
考虑到列表理解性能与map()和filter()的开放性讨论,我特别感兴趣的是,如果有人对此做了一些分析.(alt链接)
我们有一个Cloudfront发行版,其定制来源已经运行了很长时间,为我们的一个站点提供静态资产.就在今天早上,我们注意到我们的徽标显示为断开链接.
经过进一步调查,Cloudfront将返回一条我之前从未见过的有关URL的奇怪错误消息:
错误
请求无法满足.
由cloudfront生成(CloudFront)
此分发中的其他几个Cloudfront URL返回相同的错误,但其他(同样,来自同一分发)的工作正常.我没有看到什么有效,哪些无效的模式.
其他一些数据点:
知道这里发生了什么吗?我以前从未见过Cloudfront这样做过.
更新:
以下是Cloudfront的逐字HTTP响应:
$ http GET https://d2yu7foswg1yra.cloudfront.net/static/img/crossway_logo.png
HTTP/1.1 502 Bad Gateway
Age: 213
Connection: keep-alive
Content-Length: 472
Content-Type: text/html
Date: Wed, 18 Dec 2013 17:57:46 GMT
Server: CloudFront
Via: 1.1 f319e8962c0268d31d3828d4b9d41f98.cloudfront.net (CloudFront)
X-Amz-Cf-Id: H_HGBG3sTOqEomHzHubi8ruLbGXe2MRyVhGBn4apM0y_LjQa_9W2Jg==
X-Cache: Error from cloudfront
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The request could not be satisfied</TITLE>
</HEAD><BODY>
<H1>ERROR</H1>
<H2>The request could not be satisfied.</H2> …Run Code Online (Sandbox Code Playgroud) 我有一个对象的标准管理员更改表单,通常的StackedInline表单用于ForeignKey关系.我希望能够将每个内联项链接到相应的完整大小的更改表单,因为内联项具有自己的内联项,我无法嵌套它们.
我已经尝试了从自定义小部件到自定义模板的所有内容,并且无法使任何工作.到目前为止,我以片段形式看到的"解决方案"似乎并不适用于内联.我正准备尝试使用jQuery进行一些DOM攻击,以使其正常工作并继续前进.
我希望我一定会错过一些非常简单的事情,因为这看起来像是一项简单的任务!
使用Django 1.2.
我想将形状(h,w)的数组缩放n倍,得到一个形状的数组(h*n,w*n),其中.
假设我有一个2x2阵列:
array([[1, 1],
[0, 1]])
Run Code Online (Sandbox Code Playgroud)
我想将数组缩放为4x4:
array([[1, 1, 1, 1],
[1, 1, 1, 1],
[0, 0, 1, 1],
[0, 0, 1, 1]])
Run Code Online (Sandbox Code Playgroud)
也就是说,原始数组中每个单元格的值被复制到结果数组中的4个相应单元格中.假设任意数组大小和缩放因子,最有效的方法是什么?
我有两个迭代器,一个list和一个itertools.count对象(即无限值生成器).我想将这两个合并到一个生成的迭代器中,它将在两者之间交替屈服值:
>>> import itertools
>>> c = itertools.count(1)
>>> items = ['foo', 'bar']
>>> merged = imerge(items, c) # the mythical "imerge"
>>> merged.next()
'foo'
>>> merged.next()
1
>>> merged.next()
'bar'
>>> merged.next()
2
>>> merged.next()
Traceback (most recent call last):
...
StopIteration
Run Code Online (Sandbox Code Playgroud)
这样做最简单,最简洁的方法是什么?
我有一个拥有大量客户群的django网站.我想让我们的客户服务部门能够改变正常的用户帐户,做更改密码,电子邮件地址等等.但是,如果我授予某人内置auth | user | Can change user权限,他们就可以is_superuser在任何人身上设置标志.帐户,包括他们自己.(!!!)
为非超级用户员工删除此选项的最佳方法是什么?我确定它涉及子类化django.contrib.auth.forms.UserChangeForm并将其挂钩到我已经自定义的UserAdmin对象......不知何故.但我找不到任何关于如何做到这一点的文档,我还不太了解内部情况.
我有一个python生成器函数,它产生大量的文本.我想get为tornado.web.RequestHandler子类编写一个方法,它将遍历生成器,在响应时将块写入响应.
因为这是Tornado,并且由于生成器可能需要一秒钟来处理,我认为使处理程序异步,使用此生成器作为协同例程并在每个块之后将控制权传递给IOLoop会很好.但是,我无法做出如何做到这一点的正面或反面.
这是我的示例(阻止)代码:
class TextHandler(web.RequestHandler):
@web.asynchronous
def get(self, n):
generator = self.generate_text(100000)
# Clearly, this will block. How to make it asynchronous?
for text in generator:
self.write(text)
def generate_text(n):
for x in xrange(n):
if not x % 15:
yield "FizzBuzz\n"
elif not x % 5:
yield "Buzz\n"
elif not x % 3:
yield "Fizz\n"
else:
yield "%s\n" % x
Run Code Online (Sandbox Code Playgroud)
如何使此处理程序异步工作?
我的UserProfile对象上有几个包含JSON对象的TextField列.我还为每个列定义了一个setter/getter属性,它封装了将JSON序列化和反序列化为python数据结构的逻辑.
此数据的性质可确保在单个请求中通过视图和模板逻辑多次访问它.为了节省反序列化成本,我想在读取时记住python数据结构,在直接写入属性时无效或从模型对象保存信号.
在哪里/如何存储备忘录?我对使用实例变量感到紧张,因为我不理解查询实例化任何特定UserProfile背后的魔力.是__init__使用安全,或是否需要通过检查备忘录属性的存在hasattr(),在每个读?
这是我当前实现的一个示例:
class UserProfile(Model):
text_json = models.TextField(default=text_defaults)
@property
def text(self):
if not hasattr(self, "text_memo"):
self.text_memo = None
self.text_memo = self.text_memo or simplejson.loads(self.text_json)
return self.text_memo
@text.setter
def text(self, value=None):
self.text_memo = None
self.text_json = simplejson.dumps(value)
Run Code Online (Sandbox Code Playgroud) python ×5
django ×3
django-admin ×2
generator ×2
iterator ×2
arrays ×1
asynchronous ×1
cdn ×1
django-forms ×1
django-users ×1
git ×1
hyperlink ×1
memoization ×1
merge ×1
nginx ×1
numpy ×1
optimization ×1
permissions ×1
regex ×1
scaling ×1
ssl ×1
tornado ×1
web ×1