小编Cal*_*eng的帖子

django升级后的ContentNotRenderedError

这是我使用的中间件:

class StatsMiddleware(object):
    def process_view(self, request, view_func, view_args, view_kwargs):
        # get number of db queries before we do anything
        n = len(connection.queries)

        # time the view
        start = time.time()
        response = view_func(request, *view_args, **view_kwargs)
        totTime = time.time() - start

        # compute the db time for the queries just run
        queries = len(connection.queries) - n
        if queries:
        dbTime = reduce(add, [float(q['time']) 
                              for q in connection.queries[n:]])
        else:
            dbTime = 0.0

        # and backout python time
        pyTime = totTime - dbTime

        stats = …
Run Code Online (Sandbox Code Playgroud)

python django middleware django-1.4

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

帮助开发人员更快地阅读类层次结构的工

在我的日常工作中,我主要花时间在Python/Django和Objective-C/CocoaTouch和js/jQuery上.

我的选择编辑器是vimPython/Django和js/jQuery以及xcodeObjective-C/CocoaTouch.

我的开发速度的一个瓶颈是我读取现有代码的速度,特别是我使用的开源库.

例如,在Python/Django中,当我遇到django开发人员引入的一些新功能时,我很好奇并开始手动探索代码库.例如,当从django 1.3开始引入基于类的视图时,引用 - https://docs.djangoproject.com/en/dev/topics/class-based-views/ - 我将查看显示的示例代码:

from django.views.generic import TemplateView

class AboutView(TemplateView):
    template_name = "about.html"
Run Code Online (Sandbox Code Playgroud)

并尝试我的一个项目.更重要的是,我对幕后发生的事情感到好奇,所以我将深入研究源代码 -

# django/views/generic/__init__.py file

from django.views.generic.base import View, TemplateView, RedirectView
from django.views.generic.dates import (ArchiveIndexView, YearArchiveView, MonthArchiveView,
                                     WeekArchiveView, DayArchiveView, TodayArchiveView,
                                     DateDetailView)
from django.views.generic.detail import DetailView
from django.views.generic.edit import FormView, CreateView, UpdateView, DeleteView
from django.views.generic.list import ListView


class GenericViewError(Exception):
    """A problem in a generic view."""
    pass
Run Code Online (Sandbox Code Playgroud)

从这里开始,我将它向后追溯到django/views/generic/base.py文件,并找出确切的TemplateView类: -

class TemplateView(TemplateResponseMixin, View):
    """
    A view that renders a …
Run Code Online (Sandbox Code Playgroud)

python django class

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

杰基尔发球和发射

懒惰,我想链接以下两个命令,以便它可以使用一个简单的bash别名.

jekyll -w serve
Run Code Online (Sandbox Code Playgroud)

为我的jekyll实例启动开发服务器.

open "http://localhost:4000"
Run Code Online (Sandbox Code Playgroud)

在我的默认浏览器中启动我的jekyll应用程序.

我如何将它们链接在一起,以便我可以在命令行中键入一个简单的别名来进行服务和启动?

笔记

  • 注意:无论是使用&&;以链jekyll -w serveopen "http://localhost:4000"将无法工作,因为jekyll -w serve在标准输出发射持久的WEBrick过程.这意味着第二个命令open "http://localhost:4000"将不会执行,因为第一个进程(webrick)从未执行过"完成".

  • 当webrick开始时,我们可以看到如下典型输出: -

Configuration file: /Users/calvin/work/calviny/_config.yml
            Source: /Users/calvin/work/calviny
       Destination: /Users/calvin/work/calviny/_site
      Generating... done.
 Auto-regeneration: enabled
[2013-09-08 18:43:58] INFO  WEBrick 1.3.1
[2013-09-08 18:43:58] INFO  ruby 1.9.3 (2013-06-27) [x86_64-darwin11.4.2]
[2013-09-08 18:43:58] INFO  WEBrick::HTTPServer#start: pid=6183 port=4000
Run Code Online (Sandbox Code Playgroud)

bash jekyll

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

删除vim中的非空目录

Vim用户熟悉使用进入和查看当前目录列表

:o .
Run Code Online (Sandbox Code Playgroud)

在这个目录视图中,我们可以提供其他命令,如d和vim将响应"请给出目录名:".这当然允许我们在为vim提供目录名后在当前目录中创建一个新目录.

同样,我们可以通过第一运动我们的光标向下到强调,我们要删除,然后键入特定的目录列表中删除一个空目录d.

问题是,vim不允许我们删除非空目录.

是否有任何方法可以坚持我们删除非空目录?

vim

6
推荐指数
1
解决办法
5299
查看次数

调试gist-vim

我正在使用https://github.com/mattn/gist-vim并将其作为包含vim病毒的子模块安装在我的bundle目录中.

我也定了

git config --global github.user calvinchengx
git config --global github.token [mysecrettoken]
Run Code Online (Sandbox Code Playgroud)

我能够获得诸如Gist -l工作正常的命令,使用此命令检索属于我的要点列表.我也可以毫无问题地预览其他编码人员的要点Gist -l [thegithubusername].

但我无法向github发布新的要点.在尝试发布新要点时,我收到以下错误:

Posting it to gist...
Post failed:
Press ENTER or type command to continue
Run Code Online (Sandbox Code Playgroud)

没有显示任何有用的错误消息.所以我不是问题所在.有没有办法找出我的错误是什么(不熟悉调试vim脚本)?

感谢任何建议!

拉动最新的gist-vim之后我再次尝试设置,但这是我得到的错误: -

设置gist-vim凭据时出错

vim gist github

6
推荐指数
1
解决办法
905
查看次数

什么在`mkvirtualenv`命令的引擎下?

我很好奇在mkvirtualenv命令的引擎下发生了什么,所以我试图理解它是如何调用的virtualenv.

最简单的结果是确定virtualenv程序在安装后所处的位置以及安装后mkvirtualenv程序所在的位置.所以:-

Calvins-MacBook-Pro.local ttys006 Mon Apr 23 12:31:07 |~|
calvin$ which mkvirtualenv
Calvins-MacBook-Pro.local ttys006 Mon Apr 23 12:31:10 |~|
calvin$ which virtualenv
/opt/local/library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv
Run Code Online (Sandbox Code Playgroud)

所以我在这里看到的奇怪的事情是which mkvirtualenv没有给出任何结果.为什么?

进一步挖掘,在安装它之后的virtualenvwrapper目录中,我只看到3个python文件: -

Calvins-MacBook-Pro.local ttys004 Mon Apr 23 12:28:05 |/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenvwrapper|
calvin$ ls -la
total 88
drwxr-xr-x   8 root  wheel    272 Apr 13 15:07 .
drwxr-xr-x  29 root  wheel    986 Apr 15 00:55 ..
-rw-r--r--   1 root  wheel   5292 Apr 13 15:05 hook_loader.py
-rw-r--r--   1 root  wheel   4810 Apr 13 15:07 …
Run Code Online (Sandbox Code Playgroud)

virtualenv virtualenvwrapper

6
推荐指数
1
解决办法
2486
查看次数

组织硒测试和单元测试的最佳实践

所以我正在尝试在我正在开展的几个项目中引入selenium单元测试django 1.4.

运行单元测试的标准方法就是这样做./manage.py test,我用它django-ignoretests来排除我不想测试的特定django应用程序(根据需要).

但是,有没有办法配置我的项目,以便我可以决定在我想要的时候运行selenium测试,并且只./manage.py test运行标准的单元测试.

分离和组织硒测试和标准单元测试有哪些最佳实践?

django selenium unit-testing selenium-rc

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

sphinx-apidoc用法 - 多个源python目录

所以我将python源文件放在两个不同的目录中: -

例如

~/work/myproject
~/.virtualenvs/myproject
Run Code Online (Sandbox Code Playgroud)

如何使用sphinx-apidoc递归查看两个目录来生成我的reST文件?

明显,

sphinx-apidoc -o docs/source ~/work/myproject
Run Code Online (Sandbox Code Playgroud)

工作完全正常,但当我试图跑

sphinx-apidoc -o docs/source ~/.virtualenvs/myproject
Run Code Online (Sandbox Code Playgroud)

再一次,sphinx告诉我"docs/source/modules.rst已经存在,跳过"当然这是真的,因为我已经运行sphinx-apidoc过一次来生成它.

那么如何执行一次并在两个目录中搜索?

python documentation python-sphinx

6
推荐指数
1
解决办法
3763
查看次数

pip冻结和依赖顺序

`pip freeze > requirements.txt` 
Run Code Online (Sandbox Code Playgroud)

按照字母顺序自动写入我的依赖项,如下所示: -

matplotlib==1.2.0
numpy==1.6.2
pandas==0.9.1
Run Code Online (Sandbox Code Playgroud)

这个问题是pip install -r requirements.txt(当我部署我的代码及其中列出的依赖项时requirements.txt)将最终失败,因为matplotlib需要首先安装numpy.

我怎样才能确保matplotlib 在文件中的numpy 之后被列出?requirements.txtpip freeze

python pip

6
推荐指数
1
解决办法
4397
查看次数

如何修改我的代码以返回自定义JSON而不仅仅是状态200?

我试图找出如何使用haskell/yesod实现基本auth,这是一个基本的实现,可以从类似的问题中引用.

module Handler.BasicAuth where

import Import
import Network.Wai 
import Network.HTTP.Types as Import
    ( status200 )

httpBasicAuth :: Handler ()
{-getBasicAuthR = error "Not yet implemented: getBasicAuthR"-}
httpBasicAuth = do
    request <- waiRequest
    case lookup "Authorization" (requestHeaders request) of 
        Just "Basic base64encodedusernameandpassword" -> return ()
        _ -> do
            addHeader "WWW-Authenticate" "Basic Realm=\"My Realm\""
            permissionDenied "Authentication required"

getBasicAuthR :: Handler ()
getBasicAuthR = httpBasicAuth >>
    sendResponseStatus status200 ()
Run Code Online (Sandbox Code Playgroud)

我想修改我的实现,不仅返回http响应代码200,还返回读取的自定义JSON {"hello": "world"}.

我怎样才能做到这一点?

编辑

正如以下各方所建议的那样,我应该写getBasicAuthR

getBasicAuthR :: Handler Value
getBasicAuthR …
Run Code Online (Sandbox Code Playgroud)

rest json haskell

6
推荐指数
1
解决办法
151
查看次数