标签: rails-console

main的未定义方法y是Rails控制台中的对象

我一直使用'y'方法在Rails控制台中清理一下结果。但是,它似乎不再起作用。

我可以找到结果,并且可以查看结果,但不是干净的。这是我的rails控制台:

Loading development environment (Rails 3.2.6)
1.9.3-p286 :001 > y Trip.all
  Trip Load (0.1ms)  SELECT "trips".* FROM "trips" 
NoMethodError: undefined method `y' for main:Object
    from (irb):1
    from /home/timen/.rvm/gems/ruby-1.9.3-p286/gems/railties-3.2.6/lib/rails/commands/console.rb:47:in `start'
    from /home/timen/.rvm/gems/ruby-1.9.3-p286/gems/railties-3.2.6/lib/rails/commands/console.rb:8:in `start'
    from /home/timen/.rvm/gems/ruby-1.9.3-p286/gems/railties-3.2.6/lib/rails/commands.rb:41:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'
1.9.3-p286 :002 >
Run Code Online (Sandbox Code Playgroud)

console ruby-on-rails rails-console

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

无法在 Rails 控制台中访问 Mysql 模型

我有一个现有的远程 mysql 数据库,我正在尝试从我的 rails 应用程序访问它,我的 database.yml 开发中有这个:

 development:
  adapter: mysql2
  encoding: utf8
  database: mydb
  username: myusername
  password: !@#$%@!
  host: IP for my DB
  port: 3306
  pool: 5
  socket: /tmp/mysql.sock  
  timeout: 5000
Run Code Online (Sandbox Code Playgroud)

当我在 Rails 控制台中运行以下命令时

ActiveRecord::Base.connection.tables

它列出了所有可用的表,但是当我尝试访问模型时,它给了我以下错误:

City
NameError: uninitialized constant City from (irb):12
    from /home/shreyas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.11/lib/rails/commands/console.rb:47:in `start'
    from /home/shreyas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.11/lib/rails/commands/console.rb:8:in `start'
    from /home/shreyas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.11/lib/rails/commands.rb:41:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'
Run Code Online (Sandbox Code Playgroud)

任何建议我做错了什么?我想访问我的应用程序中的远程数据库,到目前为止我还没有创建任何模型。我需要创建所有模型吗?我可以在我的 schema.rb 文件中看到完整的数据库结构。

ruby-on-rails rails-console ruby-on-rails-3 ruby-on-rails-3.1 ruby-on-rails-3.2

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

从控制台探索运行Rails服务器环境

我有一个应用程序,我在本地运行它.我可以在其中创建另一个版本的应用程序rails console,但是我希望为运行的应用程序提供一个命令行界面,我可以在Web界面和控制台中进行交互.

理想情况下,我启动rails s然后可以在该环境中使用变量.

ruby-on-rails irb rails-console

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

Rails控制台sql查询只返回true

我在控制台中发出一条SQL语句:

> sql = "SELECT flavour from Libation where id=8675309"
> result = ActiveRecord::Base.connection.execute(sql)
=> true
Run Code Online (Sandbox Code Playgroud)

我正在使用oracle增强适配器,并想知道为什么我只能得到真实.我期待着像"芒果"这样的东西.我尝试过很多东西但没有运气.

oracle ruby-on-rails rails-console

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

Rails关联:通过控制台访问连接表(HABTM)

我得到了我想要的东西 - 拥有并属于许多协会,使用Rails指南中的简单指令.在控制台中它一切正常,但我有点坚持以下.

假设我有两个模型ArticleCategory,它们在模型中都有指令has_and_belongs_to_many,并且对应于数据库中的articles_categories表.在rails控制台中,我可以看到关联使用如下语句:

%>   @x = Article.find(1)
%>   @x.categories
Run Code Online (Sandbox Code Playgroud)

这样我在@x中存储了一组类别.精彩.但我真的找不到一种方法可以通过控制台添加一个新类别.现在,我使用SQL将值插入到连接表中.我希望有一种更聪明的Railsy方式来做这样的事情

%> @x.article.categories.category_id = 1  # id of category
%> @x.article.categories.article_id = 1  # id of article
%> @x.save # and written to the database
Run Code Online (Sandbox Code Playgroud)

我特意在rails控制台中寻找这样做的方法 - 所以我实际上感觉到发生了什么,而不是代码片段,但是我没有得到.我正在使用Rails 4.1.6

ruby-on-rails rails-console

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

Ruby on Rails种子数据

我是Ruby/Rails的新手.我目前正在使用Rake和seeds.rb文件了解Rails控制台和数据库.

我应该:

  • 将具有唯一标题和正文的帖子添加到seeds.rb.
  • 在创建唯一帖子之前,请验证它是否存在于数据库中.如果没有,只播种.
  • 运行rake db:seed几次,启动Rails控制台并确认您的唯一帖子只播种过一次.
  • 重复以创建唯一注释并确认它也只播种一次.

老实说,我不知道如何开始这方面的工作.我应该使用rails控制台或者直接从seeds.rb文件添加帖子?任何指导将不胜感激.

ruby ruby-on-rails rails-console

3
推荐指数
2
解决办法
4011
查看次数

哪个gem提供Rails控制台?

rails宝石具有在其他几个宝石的依赖.哪个gem提供Rails控制台?

ruby ruby-on-rails rails-console

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

如何在非导轨项目中使用rails控制台?

我的项目不是Web服务器.我正在使用ActiveRecord和ActiveSupport.我也想拥有rails控制台.如何在不生成整个rails应用程序的情况下执行此操作(和/或,最简单的方法是什么?)

ruby ruby-on-rails rails-console

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

部署到服务器后访问Rails控制台

我在生产中无法访问rails控制台.

我曾经Capistrano将应用程序部署到VPS

如果我cd deploy@myapp:~/myapp/current$并在bundle exec rails c那里运行,我总是得到用于创建新rails项目的选项列表,比如rails new

我也试着bundle exec rails console --productionrails console等等都具有相同的结果.

问题是我必须能够访问控制台,因为我必须创建一个管理员用户 active admin

可能值得补充一点,我在Ubuntu 16上使用Passenger/Capistrano和Nginx

有谁知道这里发生了什么?难道我做错了什么?

*编辑

跑完后RAILS_ENV=production bundle exec rails c我收到这条消息

 Looks like your app's ./bin/rails is a stub that was generated by Bundler.

 In Rails 4, your app's bin/ directory contains executables that are  versioned
 like any other source code, rather than stubs that are generated on demand.

  Here's how to upgrade: …
Run Code Online (Sandbox Code Playgroud)

ruby capistrano ruby-on-rails rails-console

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

在所有页面上显示 Rails 控制台

当我在开发模式下在 Rails 5.0 应用程序页面上遇到错误时,我收到一个错误页面,web-console页面底部有 Rails,如下面的屏幕截图所示。控制台对于运行发生错误的控制器的方法似乎非常有用。

示例控制台

是否可以在所有页面上启用它,以便我可以访问它而不会出现错误页面?

ruby-on-rails rails-console ruby-on-rails-5

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