`
_____bEn-beN
  • 浏览: 13534 次
社区版块
存档分类
最新评论

Eclipse+Django调试

阅读更多

如何在Eclipse中利用pydev调试Django

1.    调试环境安装
PyDev插件安装
在主菜单“Help”—>“Software updates…”中添加http://pydev.sf.net/updates自动下载安装。
安装完毕配置
在主菜单 “window”—>“preference->Pydev->interpreter python。新建”中加入Python.exe

2.    创建Pydev Django project
  创建新的EclipsePydev project(这个是Eclipse工程,不是Django工程)
文件-》新建-》其他-》pydev project-》下一步来生成eclipse的工程,并根据自己机器上的Python选择Python的版本,去掉“Create default 'src' folder and add it to the pythonpath?”的选择。最后点击“Finish”按钮完成新建项目。


如果已经用过上面的步骤,再次用的时候新建菜单里面会记录下pydev project建立菜单,直接点击就可以了。

下图是英文版的,第一次使用时建立新工程


导入已创建的
如果已有一个eclipse pydev project ,可以通过导入方式来引用该eclipse pydev project。
文件—》导入—》常规—》现有项目到工作空间中—》下一步。



建立Django project项目(注意:不是pydev工程)    
在上面所建立的 eclipse pydev project工程第一级文件夹下面建立Django project项目,也可以在别的地方建立Django project项目,再拷贝到eclipse pydev project工程第一级文件夹下面。在cmd控制台中进入到要建立Django project项目的文件夹,然后在目录中运行命令行djanog-admin.py startproject firstdjango,建立一个名叫firstdjango的Djanog项目,系统会自动生成urls.py,settings.py,__init__.py等文件。当然还可以在下面多建几个App。在cmd控制台中进入到/firstdjango目录下,运行python manage.py runserver打开浏览器输入http://127.0.0.1:8000,会看到It worked!等字样。说明项目建立好了。
工程设置,创建src folder
【###Eclipse+MyEclipse 中 package ,Source Folder ,folder的区别
1、在eclipse下,package, source folder, folder都是文件夹. 但它们有区别如;
2、 package:当你在建立一个package时,它自动建立到source folder下,也只能建立在这个目录之下.
3、source folder:存放java源代码的文件夹,当然也包括一些package文件夹,还可以包含其他文件.
4、项目构建后,source folder里面的java自动编译成class文件到相应的bin文件夹中,其他文件也会移到到相应的目录下.
5、folder:里面可以放入任何文件.包括java源文件,jar文件,其他文件(例如,图片,声音等).在此我说明一下,如果里面含有java源文件,不管程序是否正确,eclipse都不会报错,把它们当做普通文件处理.但是项目如果要使用这里面的文件,情况就不同了.###】
在PyDev python project工程上右键中,选择“属性”,再选pydev-PYTHONPATH,在Source Folders标签下,Add source folder 添加,将整个PyDev python project工程文件夹选上。也可以创建自己的source folder,例如:在你的 pydev project 上来创建src folder.在 工程上 右键 -> new -> Other … 在弹出的面板中择 Pydev 下的 Source Folder,然后下一步。


注意Source Folder的名称虽然可以自定义,但应与使用 django 命令创建 的 project 名称相同 , 这样可以避免一些不必要的错误..。在你的 PyDev 工程上右键,然后选择 refresh ,以刷新工程(这个在我们创建 源文件夹时 eclipse 应该自动就将其 添加到 PYTHONPATH 里去了。如果没有可以用下面的方法将已存在的一个源文件文件夹加入pydev工程中)。
如果要将已存在的一个源文件文件夹加入pydev工程中,就在PyDev 工程上右键,选择 Properties -> PyDev – PYTHONPATH, 将你的 src folder 添加至 project source settings (属性-> PyDev–PYTHONPATH->Add Source Folde)。
 
顺便配置下project type:

3.    调试设置
可以通过如下配置来实现Web调试,或者一个功能单独调试:
(1)点Eclipse上的甲壳虫,选调试配置。

(2)main窗口中选择manage.py所在的project,Main Module选择manage.py所在文件位置。
(3)arguments中输入 runserver --noreload。运行manager.py会报Type 'manage.py help' for usage.在运行参数(Arguments)中加上runserver --noreload即好
(4)Environment中添加DJANGO_SETTINGS_MODULE=settings ,PYTHONPATH=$PWD。
web调试,实际上就是选用内部的“manage.py runserver --noreload”功能进行调试。



 

设置完毕,再每次运行该调试选项即可。运行后控制台中出现如下说明:

然后在浏览器中选定录入 http://127.0.0.1:8000/等相关URL,在需要调试地方打断点即可。
在pydev中调试,修改代码后不能立刻起作用,必须重新调试才行。这也是 noreload的作用。
                                 4  单个功能验证                                                                                         
有时只想单独运行某个功能,可以将该功能单独弄一个python函数进行运行。Python的函数调试很简单;但是对于django,因为脱离了Web的配置,调试一个django函数的时候总是因为找不到相关的设置而失败,可以在代码中指定该设置即可。

测试函数:
 
#导入django project设置
#django.bin.mypython为django工程所在目录
import os
os.environ['DJANGO_SETTINGS_MODULE']='django.bin.mypython.settings'

#说明,如果用到序列化方法,上述方法会提示很多应用模块找不到;
#建议采用如下方法是最好的
from django.core.management import setup_environ
import django.bin.mypython.settings
setup_environ(django.bin.mypython.settings)
#但是最后会出现“Exception exceptions.AttributeError: "'NoneType' object #has no attribute 'print_exc'" in <bound method Signal._remove_receiver #of <django.dispatch.dispatcher.Signal object at 0x01476890>> ignored”。#无解。

#测试函数,注意没有web调用的request等
from django.core import serializers
from mypython.addressbook.models import Address
def test():
    objs = Address.objects.all()   
    str = serializers.serialize("json", objs) #序列化为json对象
print str

#运行测试函数
test()

设置调试项:
 
然后运行即可。可以借由此进行测试先行,单元测试。
(完)


¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
















Eclipse PyDev开发Django
最近学习Python语言,采用的Python Web 框架是 Django。“工欲善其事,必先利其器”。
Eclipse + PyDevEclipse是新一代的优秀泛用型IDE,虽然是基于Java技术开发的,但出色的架构使其具有不逊于Emacs和Vim的可扩展性,现在已经成为了许多程序员最爱的瑞士军刀。
•Eclipse — Eclipse集成开发环境使用说明,简略介绍了Eclipse插件开发的基础知识
PyDev是Eclipse上的Python开发插件中最成熟完善的一个,而且还在持续的活跃开发中。除了Eclipse平台提供的基本功能之 外,PyDev的代码完成、语法查错、调试器、重构等功能都相当出色,可以说在开源产品中是最为强大的一个,许多贴心的小功能也很符合编辑习惯,用起来相 当顺手。
速度和资源占用是致命伤,在低配置机器上跑起来比较吃力。
•PyDev — PyDev开发环境简介
Eclipse的主页:http://www.eclipse.org/
PyDev的主页:http://pydev.sourceforge.net/
PyDev使用手册:http://www.fabioz.com/pydev/manual_101_root.html (Eng) 此入门手册从安装到开发过程中的使用,并且是图文显示,推荐大家使用.
技术开发参考: 用 Eclipse,PyDev 和 Ant 进行 Python 开发,http://www-128.ibm.com/developerworks/cn/opensource/os-ecant/index.html
关于PyDev,Django的安装这里就不写了。主要关注的是怎样利用 Eclipse + PyDev来进行Django的开发。
1.选择菜单 Window -> Preferences -> PyDev -> Python Interpretter ,将 django 文件位置加入 PYTHON settings.
2.创建一个新的 PyDev python project。选择 File -> new -> Pydev project 。确信将 Create default ‘src’ folder and add it to the pythonpah? 前面的复选框的勾去掉。也就是不创建 src 文件夹。
3. 创建一个Django project 利用 django 命令, 例如: django-admin.py startproject mydjango
4. 此时在你的 pydev project 上来创建src folder.在 工程上 右键 -> new -> Other … 在弹出的面板中择 Pydev 下的 Source Folder
点击 Next 按钮。。 
注意src 的名称 应与步骤3中 使用 django 命令创建 的 project 名称相同 , 这样可以避免一些不必要的错误..] 在你的 PyDev 工程上右键,然后选择 refresh ,以刷新工程 在你的 PyDev 工程上右键,选择 Properties -> PyDev – PYTHONPATH, 将你的 src folder 添加至 project source settings (这个在我们创建 源文件夹时 eclipse 应该自动就将其 添加到 PYTHONPATH 里去了。。)
Launching to built-in server 打开 manage.py 文件,按下 F9 键 或者 选择 Run -> Run as -> Python Run. 你会看到一些有用的信息…. 要想真正的启运服务器,选择Run -> Run …, 在(manage.py) Arguments 面板 输入runserver –-noreload . noreload 是 可选参数。 看 到服务成功启动。。。。 接下来,就可以往下继续工作了。。
(完)

用Eclipse和PyDev开发Django 应用
针对读者:
已安装了Python,Eclipse,PyDev和Django。
使用Eclipse 3.2,PyDev 1.2.4 Django 0.95 和Python 2.4
第一步,Window->Preferences->Preferences->PyDev->Python Interpretter
第二步,创建一个新的PyDev项目. 并且把create src folder选项取消
第三步,通过命令行创建一个Django项目, 例如:django-admin.py startproject mysite
第四步,把刚才django生成的代码copy到刚才用Eclipse创建的PyDev项目里,并且创建一个src目录。
第五步,在eclipse中刷新这个项目。
第六步,右键单击项目,在属性中选择PyDev,PYTHONPATH,然后将src目录添加到项目代码中去
这些做完后,打开manage.py,然后按下F9,console中出现usage消息,此时选择
Run->Run…, 在Arguments选项栏中给manage.py参数设定runserver –noreload.(此处是两个短横)
一切完成了,这时候就是要好好写Django应用的时候了。
Eclipse+pydev断点调试Django
2009年3月25日 | 标签: django, eclipse, manage.py, pydev
Django中写些简单的代码还没关系,但是如果view代码比较长时,只能用print查看值会很郁闷,幸好在Eclipse+pydev的环境下也可以断点调试 Django
配置步骤:
1. project 右键 ——>Debug as ——>open Debug dialog
2. main窗口中选择manage.py所在的project,Main Module选择manage.py所在文件位置
3. arguments中输入 runserver –noreload
4. Environment中添加DJANGO_SETTINGS_MODULE=settings ,PYTHONPATH=$PWD
执行Eclipse的debug选择manange.py,启动信息如下:
pydev debugger: starting
Validating models…
0 errors found
Django version 1.0.2 final, using settings ‘game13.settings’
Development server is running at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
对首页设置断点,访问http://127.0.0.1:8000/就可以跟踪断点了。

跟踪断点有个问题,就是路径问题,重新设置了下template等路径改成windows的绝对路径,访问OK.
(完)
Eclipse + Pydev下配置Django
关键字: python
在Eclipse IDE 下, 打开 Window->Preferences... 对话框,从右侧的树形列表中选择“ PyDev”->“Interpreter Python”, 点击New按钮,从Python的安装路径下选择Python.exe,然后会弹出一个对话框让你勾选System PYTHONPATH,我是都选了,应该无所谓。最后点Ok,退出。
一、进行Django项目的开发配置
    1、建立PyDev Project
      Eclipse IDE——>File——>New——>Other——>Pydev——>选择Pydev Project——>起一个项目的名称(例如demo)——>选择路径,如E:\work——>选择适合你的Python版本(我的是2.6)——>将下面的勾去掉,不要建立src文件——>Finish。
    2、建立Django Project
     (1)django-admin.py startproject demo。(貌似不能在命令行直接用django-admin.py,而必须使用C:\Python26\Scripts\django-admin.py,后来才知道要把C:\Python26\Scripts加入Path.)
     (2)把生成的Django项目目录拷贝到Eclipse刚刚建立的项目下的目录里。返回刚才的Elicpse IDE——>在PyDev Package视图中刷新刚新建的项目demo,即可看到Django项目工程。添加、删除文件和目录的操作都可以通过右键菜单来完成。
    3、Django项目工程配置
     (1)project 右键——>属性——>选择PyDev-PYTHONPATH——>add source folder(选择项目文件路径添加到项目代码——>确定。)
     (2)对Pydev项目进行配置:
     选择Pydev的项目名称——>Run as——>Open Run Dialog——>Python Run——>右键New——>在Main面板中写入项目名称,通过Browse载入项目名称和Main Module,Main Module选择manage.py——>在Augement面板中,arguments中输入 runserver --noreload,下面的working directory加入你的base directory。

二、进行Django项目的调试配置
     跟开发配置差不多,但是添加了两个环境变量,具体操作如下:
           (1)project 右键 ——>Debug as ——>open Debug dialog。
           (2)main窗口中选择manage.py所在的project,Main Module选择manage.py所在文件位置。
           (3)arguments中输入 runserver --noreload。
           (4)Environment中添加DJANGO_SETTINGS_MODULE=settings ,PYTHONPATH=$PWD。

三、配置pylint
    1、pylint简介
         pylint主要用来分析你的PY代码,查找出其中的错误,并给出提示,并且还可以为你提出一些编码风格的提示的一个PYTHON模块。总之,它的作用是使得你的代码更加的接近 PEP 008 (http://www.python.org/dev/peps/pep-0008/) Title:  Style Guide for Python Code 中所描述的代码风格,使你的代码统一并更加可读。
    2、下载并安装pylint
         pylint, logilab-astng, logilab-common ,安装方式跟安装django的方式都是一样的。也就是直接使用
  python setup.py install 即可。
    3、配置使用pylint
         (1)Window -> preferences -> Pydev -> Pylint,选中"Use pylint?",再输入lint.py的地址,例如"C:\Python25\Lib\site-packages\pylint\lint.py"
         (2)Project->Properties->PyDev-PYTHONPATH增添项目的源文件目录到"Project Source Folders"。
         (3)添加参数,以限制pylint的输出。
             --persistent=n --comment=n
             --disable-msg=W0103,W0131,C0103,W0312,W0511,W0232
              --enable-design=n
         (4)选中Project->Build Automatically,这样保存修改时pylint就会自动check项目中的代码,否则就要用Ctrl+B手动build并触发pylint。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics