问题标签 [rails-console]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 清除rails控制台中的所有变量
任何人都可以告诉我使用什么命令来清除rails控制台中的所有变量吗?
例如
我需要一个命令,可以在不重新启动 rails 控制台本身的情况下将所有变量重置为 nil。
任何建议将不胜感激。
ruby-on-rails - Ruby on Rails - 将 URL 映射到控制器、方法和参数
我知道 Rails 应用程序中的文件 routes.rb 将 URL 映射到控制器、方法和 params 哈希中的一组参数。这在某种程度上因“资源”、嵌套资源和非 RESTful 路由而变得复杂。
有没有办法在 Rails 控制台上运行命令来映射 URL 并准确确定哪个控制器、哪个方法、哪个 http 方法以及来自给定 URL 的参数哈希的确切值?
那么是否可以在rails控制台上使用参数哈希运行控制器方法并将控制器的输出发送到STDOUT?如果是这样,怎么做?
ruby-on-rails-3 - 使用 rails 控制台测试 Rails/Rack 应用程序
我对 Rails 堆栈的简单理解是它执行以下操作(通常)
- 输入是一个 HTTP 消息(GET、POST、PUT、DELETE、HEAD)、一个 URL、一些(可选)cookie、一个(可选)会话令牌,可能还有一些以 JSON 或 XML 格式打包的数据。
- 这个 HTTP 消息由 Rack 处理,它可以通过一组“中间件”函数运行它,这些函数从消息中添加或删除数据,并且可以使用这些数据从程序的数据存储中添加、更改或删除数据。
- Rack 输出的 HTTP 消息被发送到 Rails 路由器,后者将其映射到控制器、操作和参数散列,其中包含会话信息、cookie 和其他参数。数据被分派给适当的控制器。
- 控制器方法解析参数,并在算法上将其与数据库中的数据(通过模型)组合,可选地更改数据,然后将一组以 @ 开头的变量调度到视图模板。
- 视图模板获取数据并将其与视图模板合并以形成具有适当格式(例如 HTML、JS、JSON、XML 等)的视图,或者它告诉调用者(通过 HTTP 返回代码)重定向到另一个网址。
我想使用 Rails 控制台对我的 Rails Web 应用程序执行的操作是
- 使用 URL、会话 ID、cookie 和编码数据(JSON 或 XML)编写有效的 HTTP 消息。
- 将此数据注入 Rack 接口,并在将其发送到 Rails 路由器之前检查输出的内容。
- 然后我想将该数据发送到 Rails 路由器,看看在它进入控制器之前会出现什么。
- 然后我想将该数据发送到控制器,看看在发送到视图模板之前会出现什么。
- 然后我想获取该数据并通过视图模板运行它并在 STDOUT 上显示,或者让它自动打开 Web 浏览器并查看它的呈现。
是否有任何现有的 Rails 工具可以做到这一点?如果没有,谁能指出这些接口出现的 Rails 代码?
ruby-on-rails - 如何从 Rails 控制台将字符串保存到数据库
我正在尝试将字符串保存到数据库并从视图中输出。刚开始学习RoR,所以这里有点困惑......
这是我所做的:
- 生成模型测试ID:字符串值:字符串
其次是
- 耙分贝:迁移
然后我从 ./script/rails 控制台打开了 rails 控制台
我想在这里输入这个:
test.create!(:value => "Hello World")
但它返回“ArgumentError: wrong number of arguments” :(我怎样才能正确地做到这一点?另外,我怎样才能将它存储到一个变量中并在视图中输出?
谢谢!
ruby-on-rails - 使用 JRuby 的 Rails 控制台问题:无提示符、无制表符补全、箭头键损坏等
我在 JRuby 下的 Rails 控制台遇到了各种问题,包括
- 无提示符
- Tab完成不工作(文字标签被插入)
- 向上/向下箭头不浏览历史记录(
^[[A
或^[[B
分别插入) - 左/右箭头不移动光标(
^[[D
或^[[C
分别插入) - Home/End键不将光标移动到行的开头/结尾(分别代替
1~
或4~
插入);Ctrl+ a/ Ctrl+e虽然工作 - Ctrl+c杀死控制台而不是杀死我正在输入的行
- Ctrl+d在我点击之前没有任何效果Enter(然后执行我在Ctrl+d和Enter我的 Unix shell 之间输入的任何内容)。
我从 rvm 安装了我的 JRuby 解释器,如下所示:
我的 Rails 项目是使用 Bundler(不是 rvm gemsets)管理的,所以我使用bundle exec rails c
. 有趣的是,除了/键和+需要一个新的提示行之前,rawirb
和bundle exec irb
上面的大多数问题都没有。HomeEndCtrlcEnter
我可以用准系统 Rails 复制这个问题Gemfile
:
我的外壳是zsh
,在 Ubuntu 12.04 64 位上。$JAVA_HOME
是/usr/lib/jvm/java-7-openjdk-amd64
,但是当我安装这个解释器时它可能仍然是 java-6,如果这很重要的话。
更新:一些修复
缺少提示字符显然是由Rails 控制台IRB.conf[:PROMPT_MODE]
设置为引起的。:NULL
对于常规irb
,我的设置为:RVM
(显然 rvm 在 中执行此操作~/.rvm/scripts/irb.rb
;我通过注释掉脚本排除了 rvm 导致此问题的可能性)。提供一个:PROMPT_MODE
值来~/.irbrc
解决这个问题。我想也许一个类似的问题是通过更改and导致Ctrl+ c/ Ctrl+问题,但它们都设置为默认值。d:IGNORE_SIGINT
:IGNORE_EOF
:USE_READLINE
通过设置为 true,可以修复 Tab 补全和箭头键。
这是我目前~/.irbrc
似乎可以解决上述问题的电流:
ruby-on-rails - 奇怪的行为 - irb 和 rails 控制台
对于命令require rails , irb首先给出true,然后总是给出false。
rails 控制台总是给出错误的。
这是怎么回事?
请看下面的cmd-
ruby-on-rails - Postgresql 表值与 Ruby on Rails Active Record 查询结果不匹配
我在 Postgresql 中有一个名为monthly_trips 的表。有一行值 id = 3 & al = 107.415。我的问题是当我尝试访问 rails 中“al”列的值时。使用带有以下代码的 Rails 控制台,我得到 6154.426156397738 的结果。我不知道是什么产生了这个更大的数字(准确地说是 57.295779513 倍)。任何帮助将不胜感激!如果您需要更多信息,请与我们联系。
每月旅行.rb
psql 输出(选择 id,al frommonthly_trips where id = 3;)
psql 输出(\d 每月一次)
迁移文件
pg_locks 表
ruby-on-rails - 如何在 pry 中对 awesome_print 结果进行分页
我正在使用awesome_print
gem 来显示输出pry
以看起来很漂亮。由于 awesome_print
使用换行符,长输出ap html.chapters.order("position ASC")
只显示输出的结尾部分,我如何对结果进行分页以使其看起来像它,通过管道传输less
或more
谢谢。
ruby-on-rails - Rails 3.2.9 中的“rails 控制台”命令引发错误
我正在使用带有 ruby 1.9.3 的 Rails 3.2.9(默认使用 RVM)。当我执行命令'rails console'/'rails c'时,从我的test_app的根目录中,显示以下错误。
谁能帮我解决这个问题?
ruby-on-rails - Rails: find 和 find_by 返回奇怪 #在模型中,但不在 Rails 控制台中
我已经坚持了几个小时的奇怪问题:
我正在使用 Rails 3 编写一个简单的用户登录,其中用户使用他们的电子邮件和密码登录。在我的用户模型中,我试图通过他们的电子邮件找到正确的用户对象,然后继续查看他们是否输入了正确的密码。
当我尝试从 rails 控制台查找用户时
我得到了想要的结果——返回了正确的用户对象
但是当我将以下代码放入 model/user.rb 文件时,我得到了一个奇怪的结果
输出以下内容:
当我尝试使用这个用户变量时,它会出错并说变量或方法“用户”是未知的
这是日志文件的输出:
这是我尝试过的一些事情......
上面的mysql查询肯定有效。我已经将它复制到 mysql 中,它得到了正确的用户。
我试过 find(id) 也不起作用。返回类似的用户:0x10b7b82c8
总的来说,我不明白为什么控制台会给出与模型代码本身不同的结果。
有人知道为什么我会从 find_by 得到如此奇怪的结果吗?
非常感谢!
编辑:这是附加代码,因为 Frederick 提到不足以找到问题。
来自控制器/users_controller.rb
来自模型/user.rb