I typed this:
>rails console
and got this:
Usage:
rails new APP_PATH [options]
Options:
[--skip-gemfile] # Don't create a Gemfile
-d, [--database=DATABASE] # Preconfigure for selected database (options: mysql/oracle/postgresql/sqlite3/frontbase/ibm_db)
# Default: sqlite3
..
..
.
I'm following along the rails tutorial and got stuck on this.
I have rails 3.0 installed.
In case anyone else hits this, my symptoms were:
I'd deployed my application with Capistrano 3
I cd'd into my application directory, and rails console didn't work
Turned out I'd included the bin folder as a symlinked directory in my cap deploy, as follows:
set :linked_dirs, %w{log tmp/pids tmp/cache tmp/sockets vendor/bundle public/system}
... and my bin directory in 'shared' was empty.
Two fixes:
I then re-deployed and it works.
Are you in the root path of your app when you type $ rails console
?
Tip: $ rails c
is a shortcut for $ rails console
I just ran into this same problem while upgrading a Rails 2 app to Rails 3. When running rails console
(or really rails [anything]
) in my app's root directory, I would see general rails new
usage output (as Blankman referenced in the original question).
The problem was that I had not removed the old Rails 2 scripts from the script
directory. After removing everything in the script
directory and adding the script/rails
file that is auto-generated in each new Rails 3 app, the rails
command now works as expected.
In order to get the latest contents of the script/rails
file, generate a new app and copy the file into your Rails 2 app that you're upgrading. As of Rails 3.0.7, here's what's in this file:
#!/usr/bin/env ruby
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
APP_PATH = File.expand_path('../../config/application', __FILE__)
require File.expand_path('../../config/boot', __FILE__)
require 'rails/commands'
当我将 Rails 2 升级到 3 时遇到了这个问题,并且能够按照 Nick 所说的进行修复,然后还运行bundle exec rails console production
。
In Rails 2.3.x the command is script/console
within a given Rails application directory to start a Ruby console with the default Rails environment loaded into memory. Not sure if Rails 3.0 is the same or not.
You need to into the project directory and command rails console
eg:
D:\workspace\>rails blog
D:\workspace\>cd blog
D:\workspace\blog\> rails c
loading en...
are you in a rails 3 app directory?
do you have multiple versions of rails installed?
try checking 'which rails', and make sure this is a rails 3 executable you are running - that usage looks like rails 2.x.
You are running the correct command ( rails console
), but you are most likely not in the working directory for this application. Change directory to the root of your rails application (beneath which you will find /scripts
, /app
, etc.), and the command should work as desired.
Note: Using script/console
or ruby script/console
is for earlier versions of Rails.
在我的情况下bin/rails c
处理了我的应用程序根文件夹
You need two gems "rdoc" and "rb-readline After that add this gems in Gemfile and bundle install
Console is working fine
Arch-linux or Manjaro
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.