2011-05-26 34 views
0

我嘗試了兩種方法來完成代碼,一個是OK,另一個是失敗。爲django代碼完成創建一個vim腳本,但是失敗,爲什麼?

確定一個不象下面這樣:

$> cd myDjangoProject/ 
myDjangoProject $> export PYTHONPATH="." 
myDjangoProject $> DJANGO_SETTINGS_MODULE=settings vim urls.py 

然後^ X^o可以很好地工作。但是在編輯項目中的文件時,這種方法會導致我重複執行上述操作。

所以有一個想法來到我這裏,爲什麼不創建一個腳本自動完成以上操作?

請參考Blog for django code completion in vim,這正是我的想法,但在配置期間遇到問題。

失敗一個如下:

  1. 中創建名爲/usr/bin腳本vim_wrapper

    #!/bin/bash

    export PYTHONPATH="${PYTHONPATH}:/path/to/myDjangoProject/"

    DJANGO_SETTINGS_MODULE="/path/to/myDjangoProject/settings" vim [email protected]

  2. 添加別名~/.bashrc

    alias vi="vim_wrapper"

重啓終端sesstion,指揮vi /path/to/myDjangoProject/urls.py,進行測試:python from django import db,錯誤發生的說:

ImportError: Could not import settings 'myDjangoProject/settings' (Is it on sys.path?): Import by filename i s not supported.

我不知道如何解決這個問題。感謝幫助。

回答

0

/usr/bin

含量vim_django腳本創建vim_django可執行腳本:

#!/bin/bash

PROJECT=`python -c "import os; print os.getcwd().partition('Solutions')[2].split(os.sep)[1]"` 
export PYTHONPATH="${PYTHONPATH}:/path/to/django-projects-parent/" 
DJANGO_SETTINGS_MODULE=$PROJECT.settings vim [email protected] 

類型vim_django urls.py(or other files)在Django項目,Ctrl-x & Ctrl-o代碼完成編輯。

注:在PROJECT設置,您可能會注意到Solutions那是我所有的Django項目

0

嘗試設置DJANGO_SETTINGS_MODULE=settings就像它工作時一樣。我的希望是你的設置PYTHONPATH就足夠了。

+0

只有設置的父目錄'DJANGO_SETTINGS_MODULE'不能很好地工作。正如'失敗'結果所說,'myDjangoProject不在sys.path'上,所以我必須將它插入到PYTHONPATH中。 – Jason 2011-05-26 16:01:39

相關問題