Подтвердить что ты не робот

Рельсы создают модель

Я пытаюсь следовать инструкциям из книги "Head First Rails", а на странице 50 говорится о создании модели, но я не могу создать модель с помощью команды rails.

Когда я набираю это в этом приглашении: localhost: ~ home $

 rails generate model ad name:string description:text price:decimal seller_id:integer email:string img_url:string

Я получаю это:

Usage:
  rails new APP_PATH [options]

Options:
  -r, [--ruby=PATH]              # Path to the Ruby binary of your choice
                                 # Default: /Users/home/.rvm/rubies/ruby-1.9.3-p125/bin/ruby
  -b, [--builder=BUILDER]        # Path to a application builder (can be a filesystem path or URL)
  -m, [--template=TEMPLATE]      # Path to an application template (can be a filesystem path or URL)
      [--skip-gemfile]           # Don't create a Gemfile
      [--skip-bundle]            # Don't run bundle install
  -G, [--skip-git]               # Skip Git ignores and keeps
  -O, [--skip-active-record]     # Skip Active Record files
  -S, [--skip-sprockets]         # Skip Sprockets files
  -d, [--database=DATABASE]      # Preconfigure for selected database (options: mysql/oracle/postgresql/sqlite3/frontbase/ibm_db/sqlserver/jdbcmysql/jdbcsqlite3/jdbcpostgresql/jdbc)
                                 # Default: sqlite3
  -j, [--javascript=JAVASCRIPT]  # Preconfigure for selected JavaScript library
                                 # Default: jquery
  -J, [--skip-javascript]        # Skip JavaScript files
      [--dev]                    # Setup the application with Gemfile pointing to your Rails checkout
      [--edge]                   # Setup the application with Gemfile pointing to Rails repository
  -T, [--skip-test-unit]         # Skip Test::Unit files
      [--old-style-hash]         # Force using old style hash (:foo => 'bar') on Ruby >= 1.9

Runtime options:
  -f, [--force]    # Overwrite files that already exist
  -p, [--pretend]  # Run but do not make any changes
  -q, [--quiet]    # Suppress status output
  -s, [--skip]     # Skip files that already exist

Rails options:
  -h, [--help]     # Show this help message and quit
  -v, [--version]  # Show Rails version number and quit

Description:
    The 'rails new' command creates a new Rails application with a default
    directory structure and configuration at the path you specify.

    You can specify extra command-line arguments to be used every time
    'rails new' runs in the .railsrc configuration file in your home directory.

    Note that the arguments specified in the .railsrc file don't affect the
    defaults values shown above in this help message.

Example:
    rails new ~/Code/Ruby/weblog

    This generates a skeletal Rails installation in ~/Code/Ruby/weblog.
    See the README in the newly created application to get going.
localhost:~ home$ 

Я использую Rails -v 3.2.8 и Ruby 1.9.3p125

4b9b3361

Ответ 1

Код в порядке, но вы находитесь в неправильном каталоге. Вы должны запускать эти команды внутри вашего проекта-каталога rails.

Обычный способ добраться туда с нуля:

$ rails new PROJECT_NAME
$ cd PROJECT_NAME
$ rails generate model ad \
    name:string \ 
    description:text \
    price:decimal \
    seller_id:integer \
    email:string img_url:string

Ответ 2

Ошибка показывает, что вы еще не создали проект рельсов, или вы не находитесь в каталоге проектов rails.

Предположим, что вы работаете над проектом myapp. Вы должны перейти в эту директорию проекта в командной строке, а затем сгенерировать модель. Вот несколько шагов, на которые вы можете обратиться.

Пример. Предполагая, что вы еще не создали приложение Rails:

$> rails new myapp
$> cd myapp

Теперь создайте модель из командной строки.

$> rails generate model your_model_name 

Ответ 3

Сначала вам нужно создать новое приложение rails. Run

rails new mebay
cd mebay
bundle install
rails generate model ...

И попробуйте найти учебник Rails 3, есть много изменений, так как 2.1 Guides (http://guides.rubyonrails.org/getting_started.html) являются хорошей начальной точкой.

Ответ 4

Для меня что случилось, что я создаю приложение с рельсами новых рельсов new chapter_2 но RVM -default имел рельсы 4.0.2, но мой проект chapter_2 использует новый gemset с рельсами 3.2.16.

Итак, когда я запустил

rails generate scaffold User name:string email:string

консоль показала

Usage:
   rails new APP_PATH [options]

Итак, я установил RVM и gemset с рельсами 3.2.16 gem и снова сгенерировал приложение после этого побежал

 rails generate scaffold User name:string email:string

и он работал