我尝试了两种方法来完成代码,一种是好的,另一种是失败的。
确定如下所示:
$> cd myDjangoProject/
myDjangoProject $> export PYTHONPATH="."
myDjangoProject $> DJANGO_SETTINGS_MODULE=settings vim urls.py
然后^ x ^ o可以很好地工作。但是这种方法导致我在项目中编辑文件时重复上述操作。
所以我想到了一个想法,为什么不自动创建一个脚本呢?
请参阅Blog for django code completion in vim,这正是我的想法,但在配置过程中遇到了问题。
失败一个:
在名为/usr/bin
vim_wrapper
中创建一个脚本
#!/bin/bash
export PYTHONPATH="${PYTHONPATH}:/path/to/myDjangoProject/"
DJANGO_SETTINGS_MODULE="/path/to/myDjangoProject/settings" vim $@
在~/.bashrc
alias vi="vim_wrapper"
重启终端sesstion,命令vi /path/to/myDjangoProject/urls.py
,进行测试:python from django import db
,发生错误说:
ImportError:无法导入设置 'myDjangoProject / settings'(它是否开启 sys.path?):按文件名导入我没有 支撑。
我不知道如何解决这个问题。谢谢你的帮助。
答案 0 :(得分:0)
尝试设置DJANGO_SETTINGS_MODULE=settings
,就像它工作时一样。我希望你PYTHONPATH
的设置就足够了。
答案 1 :(得分:0)
在vim_django
/usr/bin
可执行脚本
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 $@
在django项目中输入vim_django urls.py(or other files)
进行编辑,Ctrl-x & Ctrl-o
代码完成。
注意:在PROJECT
设置中,您可能会注意到Solutions
是我所有django项目的父目录