`
任清宇
  • 浏览: 21573 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

rails断点调试

    博客分类:
  • ruby
 
阅读更多

在ruby on rails  编程中 难免会遇到问题,有些问题需要一步一步的调试才能解决,这里记录一下rails的常用的调试方法已被后期的使用

 

断点

断点设置在何处终止执行代码。调试器会在断点设定行调用。

断点可以使用 break 命令(缩写形式为 b)动态添加。设置断点有三种方式:

  • break line:在当前源码文件的第 line 行设置断点;
  • break file:line [if expression]:在文件 file 的第 line 行设置断点。如果指定了表达式 expression,其返回结果必须为 true 才会启动调试器;
  • break class(.|\#)method [if expression]:在 class 类的 method 方法中设置断点,. 和 \# 分别表示类和实例方法。表达式 expression 的作用和上个命令一样;
  • (rdb:5) break 10
    Breakpoint 1 file /PathTo/project/vendor/rails/actionpack/lib/action_controller/filters.rb, line 10
     info breakpoints n 或 info break n 命令可以列出断点。如果指定了数字 n,只会列出对应的断点,否则列出所有断点。
  • (rdb:5) info breakpoints
    Num Enb What
      1 y   at filters.rb:10
     如果想删除断点,可以执行 delete n 命令,删除编号为 n 的断点。如果不指定数字 n,则删除所有在用的断点。
  • (rdb:5) delete 1
    (rdb:5) info breakpoints
    No breakpoints.
     启用和禁用断点的方法如下:
    • enable breakpoints:允许使用指定的断点列表或者所有断点终止执行程序。这是创建断点后的默认状态。
    • disable breakpoints:指定的断点 breakpoints 在程序中不起作用。
    • 恢复执行
    • 有两种方法可以恢复被调试器终止执行的程序:

      • continue [line-specification](或 c):从停止的地方恢复执行程序,设置的断点失效。可选的参数 line-specification 指定一个代码行数,设定一个一次性断点,程序执行到这一行时,断点会被删除。
      • finish [frame-number](或 fin):一直执行程序,直到指定的堆栈帧结束为止。如果没有指定 frame-number 参数,程序会一直执行,直到当前堆栈帧结束为止。当前堆栈帧就是最近刚使用过的帧,如果之前没有移动帧的位置(执行 updown 或 frame 命令),就是第 0 帧。如果指定了帧数,则运行到指定的帧结束为止。
      • 有很多 Rails 插件可以帮助你查找问题和调试程序。下面列出一些常用的调试插件:

        • Footnotes:在程序的每个页面底部显示请求信息,并链接到 TextMate 中的源码;
        • Query Trace:在日志中写入请求源信息;
        • Query Reviewer:这个 Rails 插件在开发环境中会在每个 SELECT 查询前执行 EXPLAIN 查询,并在每个页面中添加一个 div 元素,显示分析到的查询问题;
        • Exception Notifier:提供了一个邮件发送程序和一组默认的邮件模板,Rails 程序出现问题后发送邮件提醒;
        • Better Errors:使用全新的页面替换 Rails 默认的错误页面,显示更多的上下文信息,例如源码和变量的值;
        • RailsPanel:一个 Chrome 插件,在浏览器的开发者工具中显示 development.log 文件的内容,显示的内容包括:数据库查询时间,渲染时间,总时间,参数列表,渲染的视图等。
分享到:
评论

相关推荐

    使用Aptana+Rails开发Rails Web应用(中文)

    你可以设置断点,单步执行代码,查看变量值,帮助找出程序中的错误。此外,Aptana还集成了版本控制系统,如Git,你可以直接在IDE中完成提交、推送等操作。 Rails的另一大优势是其丰富的插件和gem库。在Gemfile中...

    让你的dreamweaver也支持rails!

    4. **调试支持**:集成Rails的调试工具,如byebug,进行断点调试。 5. **数据库操作**:集成数据库管理工具,可以直接在Dreamweaver中进行数据操作。 6. **版本控制**:与Git或其他版本控制系统集成,进行版本管理和...

    windows下配置netbeans开发rails

    8. **调试和测试**:NetBeans提供了内置的调试器和测试工具,你可以创建断点,单步执行代码,检查变量值,进行单元测试和功能测试。使用`rspec`这样的测试框架,可以在IDE内直接运行和查看测试结果。 9. **版本控制...

    NetBeans Ruby and Rails IDE with JRuby 2009

    - **使用断点**:在代码的关键位置设置断点,控制调试流程。 - **使用调试器窗口**:查看和管理调试过程中的变量状态。 - **使用本地历史功能**:查看和恢复之前的代码版本,非常有用的功能之一。 总结来说,...

    eclipse的ruby on rails开发插件RadRails

    3. **调试工具**:内置Rails应用的调试器,可以在代码中设置断点,查看变量值,跟踪调用栈等。 4. **数据库管理**:连接到数据库,执行SQL查询,查看和修改数据表结构。 5. **版本控制集成**:与Git、SVN等版本控制...

    Aptana Radrails - An Ide for Rails Development

    - **断点设置**:允许在特定代码行上设置断点,暂停执行以检查状态。 - **变量查看**:在调试过程中查看和修改变量值,更好地理解程序运行状态。 - **单步执行**:逐行执行代码,便于跟踪逻辑流程。 - **项目管理...

    Simply Rails 2 2nd Edition (2008)

    - **主要内容**:教授如何进行代码调试,包括断点设置、日志记录等;同时还涵盖了单元测试、集成测试以及性能测试的方法。 - **学习目标**:学会运用各种调试工具定位并解决问题,掌握全面的测试策略。 ##### 第12...

    rails-refresh:在rails上刷新

    6. ** pry** 和 **byebug**:这两个是Rails开发中常用的调试工具,允许你在代码中设置断点,逐步执行,查看变量值等,帮助理解程序运行过程。 7. **数据库迁移**:在Rails中,如果你修改了数据库模型,记得运行`...

    Packt.Aptana.RadRails.an.IDE.for.Rails.Development.May.2008

    2. **调试工具**:集成了调试器,可以方便地进行单步调试、设置断点等操作,帮助开发者快速定位和解决问题。 3. **版本控制系统集成**:支持 Git 等版本控制系统,便于代码管理和团队协作。 4. **项目模板**:提供了...

    Aptana_RadRails_Setup_2.0.2.exe.hx3.rar

    2. 调试支持:内建的Rails调试器,可以设置断点,查看变量值,跟踪代码执行流程。 3. 集成开发环境:集成了Git、SVN等版本控制系统,方便团队协作。 4. 自动重构工具:通过自动化操作帮助改善代码结构,提升代码质量...

    RoRED

    它旨在提供一个高效、便捷的平台,帮助开发者更轻松地进行Rails应用的编写、调试和部署。RoRED集成了多项实用功能,如代码高亮、自动完成、版本控制集成、调试工具等,以提升开发效率并降低出错可能性。 首先,...

    ruby RDT&RadRails(Eclipse下的插件)

    - **调试**:强大的调试器支持,可以设置断点、查看变量值、单步执行,以及进行性能分析。 - **项目管理**:创建、管理和组织Rails项目,包括模型、控制器、视图等文件的生成和组织。 - **数据库操作**:与数据库...

    railshelp:Rails生成器缺少的GUI

    关于我想在Rails生成器上创建一个比备忘单更全面,更具交互性的资源。 GUI使必需的参数显而易见,并公开了一些鲜为人知的选项(例如{polymorphic} )。参考发展在提供了一些VSCode调试配置.vscode 。 我不确定为什么...

    ruby eclipse插件

    - **调试**:集成的Ruby调试器允许设置断点、查看变量值,方便查找和修复问题。 - **项目管理**:支持创建和管理Ruby项目,包括Rails项目,可以轻松管理文件和资源。 - **版本控制**:与Git等版本控制系统集成,便于...

    最新版bundler,windows下可运行

    7. **调试**:在VS2013中,可以设置Ruby调试配置,通过`bundle exec`启动应用,进行断点调试。 8. **更新Bundler**:随着时间的推移,Bundler会发布新版本,可以通过`bundle update --bundler`来保持Bundler是最新...

    Ruby

    构建轨道应用程序每次Gemfile更改后运行docker docker-compose build或构建容器运行导轨应用运行docker-compose up来运行Rails应用点击http://0.0.0.0:3000调试Rails应用添加binding.pry或byebug要放断点在你的代码...

    阿里云javasdk源码-RAD2020_s3653114:RAD2020_s3653114

    添加binding.pry或byebug要放断点在你的代码。 在控制台中docker-compose run --service-port --rm web以在调试模式下运行 rails 应用程序 访问您正在调试的端点以在 pry 或 byebug 中进入调试模式 使用 docker 的 ...

    一组针对现代编辑解决方案的建议。_HTML_Ruby_下载.zip

    5. **调试与测试**:编辑器还应支持代码调试,例如VS Code可以方便地进行Ruby的断点调试,同时通过诸如Pry这样的库进行交互式调试。对于前端工作,编辑器需支持浏览器预览或Live Server插件,实现即时查看HTML改动。...

    Aptana_RadRails_Setup_2.0.2.exe.hx4.rar

    3. 调试工具:内置Rails应用的调试器,允许设置断点、查看变量值、单步执行代码等,便于查找和修复问题。 4. 集成开发环境:与Git、SVN等版本控制系统无缝集成,方便代码版本管理和协作。 5. 预览功能:可以在编辑器...

Global site tag (gtag.js) - Google Analytics