标签: rubymine

如何使用rubymine调试器来调试rails应用程序?

我是铁路新手。我目前在 Rails 上进行调试的方法是:

  1. 在 ruby​​mine 中以调试模式运行 Rails
  2. 我将在代码中放置“绑定撬”,而不是放置断点
  3. 打开终端并输入“rails c”。
  4. 触发终端中的特定状态/事件,以便我可以到达断点。

这不是我喜欢的工作流程。这很乏味。我真的很喜欢 jet Brain 的调试模式,因为我可以轻松地设置断点、停止、计算表达式、查找所有可用对象并单步执行特定方法。有没有办法用 Rails 来做到这一点?

ruby debugging ruby-on-rails rubymine rubymine-7

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

如何在 ruby​​ documentor 中声明特定类型的数组?

我想在 ruby​​doc 中为参数或变量或@return. (一定是RDoc?..)

主要原因是让 RubyMine(或其他 IDE)以正确的方式支持自动完成功能、可点击方法、重构等。

在 PHP 中将如下所示:

/**
 * @param array $items
 * @param Filter[] $filters
 * @return Result[]
 */
function filter($items, $filters) {}
Run Code Online (Sandbox Code Playgroud)

我只是不确定它是否可以在 RubyMine 中以类似的方式工作:

##
# @param [Array] items
# @param [Filter[]] filters
# @return [ResultClass[]]
#
def filter(items, filters); end
Run Code Online (Sandbox Code Playgroud)

PHP 中的额外示例:

class My
{
    public $name;
}

/**
 * @return My[]
 */
function foo()
{
      // Similar code here
      //return [new My(), new My()];
}

function show()
{
    foreach (foo() …
Run Code Online (Sandbox Code Playgroud)

ruby rdoc rubymine

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

有没有办法在 JetBrains IDE (IntelliJ/RubyMine) 中搜索数据库表的特定列?

JetBrains 的 IDE 有一个数据库客户端,您可以在其中查看不同的表行/列。

我有一个包含数百列的表。有没有办法跳转/搜索特定列?否则,滚动浏览所有列并手动搜索是非常烦人的。

我正在使用 IntelliJ、RubyMine 数据库客户端,但我认为这对于 JetBrains 的所有 IDE 来说都是相同的快捷方式/方式。

在此输入图像描述

jetbrains-ide intellij-idea rubymine datagrip

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

Ruby和Rine中的Ruby和Rails代码完成问题

与我熟悉的C#开发代码完成相比,我发现RubyMine提供的代码完成程度令人惊讶地不完整.

  1. 当我用一些方法编写一个类并且我想从另一个类调用它们时,
    为什么我得到一个类似于"一英里"长的代码完成列表,但是没有相关的方法建议呢?
    (或者这是我的RubyMine中的错误/功能?!)

  2. 有些类像ActionMailer 神奇地生成像"deliver_*"方法一样的方法(参见本)......由于我在代码完成时没有看到它们,我怎么知道它们甚至存在?
    (不幸的是,我现在也得到一个错误,那个deliver_contact方法不存在......正如我完全从示例中复制过来问我自己现在这个特征仍然存在8 []

他们有什么方法可以解决这些问题吗?

ruby ruby-on-rails rubymine

0
推荐指数
1
解决办法
2320
查看次数

使用RubyMine在模型中添加/更新列

我正在开发一个基本上通过表单与db表交互的Web应用程序.最近我不得不进行一些更改,这导致我在db表中添加了另一列.我正在使用RubyMine进行开发,无法弄清楚如何更新模型以使其包含新列.我已将其添加到模型中,如下所示:

class Student < ActiveRecord::Base
attr_accessible :f_name, :floor_pref, :l_name, :is_active

validates_presence_of :f_name, :floor_pref, :l_name
end
Run Code Online (Sandbox Code Playgroud)

我还在schema.rb中添加了它:

ActiveRecord::Schema.define(:version => 20130620140537) do

create_table "students", :force => true do |t|
t.string   "f_name"
t.string   "l_name"
t.string   "floor_pref"
t.boolean "is_active"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end

end
Run Code Online (Sandbox Code Playgroud)

并且也在迁移内部如此:

class CreateStudents < ActiveRecord::Migration
def change
create_table :students do |t|
  t.string :f_name
  t.string :l_name
  t.string :floor_pref
  t.boolean :is_active

  t.timestamps
end
end
end
Run Code Online (Sandbox Code Playgroud)

问题是当我运行rails控制台并查找我的模型对象时,它没有显示我添加的新列(:is_active).它只显示旧列:

>> Student
Loading development environment (Rails 3.2.13)
Switch to …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails rubymine ruby-on-rails-3

0
推荐指数
1
解决办法
6729
查看次数

如何手动(而不是通过控制器向导)向rails应用程序中的ruby中的控制器添加视图?

我正在使用Ruby mine在rails应用程序上构建ruby.一切都很好.我创建了新项目,然后按Ctrl + Alt + G. 从发电机选项我选择控制器.然后我得到一个窗口,我必须在其中命名控制器和操作.当我选择不同的动作时,会在以我的动作命名的控制器中创建相应的功能.如果我按下该功能名称左​​侧的图标,我会获得为具有extension.html.erb的特定功能打开的视图文件.这很好.但是,如果我忘记在控制器对话框中添加一个或多个动作,该怎么办?然后据说我必须添加一个名称是我想要的视图的函数.即

def functionname

end
Run Code Online (Sandbox Code Playgroud)

现在当我点击这个功能名的左侧时.我可以选择创建扩展名为.html.erb的文件.所有这一切都很好.但是,当我构建此应用程序并尝试访问此新创建的视图时,我收到以下错误

    Routing Error
No route matches [GET] "/say_hello/sona"
Try running rake routes for more information on available routes.
Run Code Online (Sandbox Code Playgroud)

如何向控制器添加视图,除了使用该控制器向导?之后我不能添加视图吗?`

ruby-on-rails rubymine rails-routing

0
推荐指数
1
解决办法
4481
查看次数

从源树/ RubyMine中恢复已删除的文件

我一直在使用Rubymine和Git进行raketask.我一直在使用SourceTree将我的更改推送到github.

我不小心在源代码树中为我正在处理的文件选择了"删除"选项.这种方法显然使文件"无可挽回地丢失",这并没有给我太多希望.反正有没有恢复文件?它还没有提交也没有推到github,而且文件不在我当地的垃圾箱里.

recover rubymine

0
推荐指数
1
解决办法
4677
查看次数

Ruby 是否会自动提升数值进行比较?

究竟为什么将浮点值 1.0 与整数值 1 进行比较会返回 true?

puts '1.0'.to_i
puts '1.0'.to_i == 1.0 #so 1 == 1.0 is true?
puts 1.0 == 1 #wtf?
Run Code Online (Sandbox Code Playgroud)

Ruby是否只读取浮点值的第一部分然后短路?有人可以通过一些文档的链接进行解释吗?我翻阅了 API,但我什至不知道在这种情况下要寻找什么......

ruby jruby rubymine

0
推荐指数
1
解决办法
166
查看次数