Instant Railsについて

このQ&Aのポイント
  • Instant RailsとRadRailsを使用してRoRを始める初心者のためのガイド
  • 参考にした記事でのテーブル作成の際に問題が発生しており、migrationファイルの作成は成功したがテーブルが作成されない
  • InstantRailsにパッケージされているmysqlのバージョンが古く、アップデートする必要があるか、他に対処すべき問題があるかどうか不明
回答を見る
  • ベストアンサー

Instant Railsについて

Instant Rails + RadRailsでRoRを始めようとしている初心者です。 http://www.itmedia.co.jp/enterprise/0703/articles/12/news018.html ↑を参考にして始めようとしましたが、2ページ目のテーブルを作るところでつまづきました。 migrationファイルは作成出来たのですが、 >rake migrate で The rake task migrate has been deprecated, please use the replacement version db となり、テーブルが作成されせん。 InstantRailsにパッケージされているmysqlのver.を確認したところ Ver 14.12 Distrib 5.0.27, for Win32 (ia32) でした。これを最新にするべきなのか、ほかにすべきことがあるのかご教示下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.2

InstantRailsもRadRailsも使ったことがないので手間取りました。すみません。 確かに > (in E:/root/bin/InstantRails/rails_apps/enquete) と出て、数秒後 > The rake task migrate has been deprecated, please use the replacement version db こんな動作をしました。 ただ、このメッセージはエラーを示すものではないです。 phpAdminの画面を見てみると、メイン画面の上のほうに インフォメーションマークに、データベースを作成したという メッセージが出ました。 とはいうものの、例のページにあるように 画面左のプルダウンメニューを開いても enquete_development というはありませんでした。 最終的になにが利いたのかわかりませんが、 画面を再描画させたら(プルダウンメニューの上にある家のアイコンを 押したときのような記憶が)、 メニューにenquete_developmentが現れました。 ここで説明にある操作を行い、 そのあとのscafoldも含めて異常なく終了できました。 ということで、phpMyAdminの画面でちょっと粘ってみてください。

massa0111
質問者

お礼

お手数をかけました。 どうやら何度かいじっている時に、なんでかわからないのですが、 schema_infoテーブルだけ出来ていたため、それが、他のテーブルの作成を阻害していたようです。 一度、schema_infoをdropさせてから改めて >rake migrateを実行したところ、enquetesテーブルとitemsテーブルが作成されました。phpMyAdminの画面更新も必要なようでした。 ご専門でない事をわざわざ調べていただき感謝致します。ありがとうございました。

その他の回答 (2)

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.3

Railsは最近バージョンがあがってたりするので 色々情報が錯綜していたりするようですが、 rake migration ではなく rake db:migration とするのが推奨みたいです。 メッセージのとおりですね。

massa0111
質問者

お礼

あ、メッセージの意味するところはそういうことだったのですね。 ありがとうございました。

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

提示されているURLが404なんですけど、本当にあっていますか? それと >rake migrate したあと、いきなりで The rake task migrate has been deprecated, please use the replacement version db となったのでしょうか?

massa0111
質問者

補足

わ、すみません。リンクミスです。 http://www.itmedia.co.jp/enterprise/articles/0703/12/news018.html ↑のURLです。 >rake migrate したあと、 (in E:/root/bin/InstantRails/rails_apps/enquete) と出て、数秒後 The rake task migrate has been deprecated, please use the replacement version db となります。

関連するQ&A

  • railsのmigration機能

    Ruby on Railsのmigration機能は便利ですが、この機能をRuby on Rails以外のプロジェクトのユニットテストのために使いたいと思っています。 というわけでRoRプロジェクトを作成しないで同等のmigration機能だけを使用できるようなツールみたいなものを探していますが、見つかりません。 (当方のrubyとRoRの無知さから情報にたどり着けないだけの可能性あり。。) 何かいいツール知ってる方いましたら教えて下さい。 (rubyで書かれていなくてもNPです。)

    • ベストアンサー
    • Ruby
  • Railsで作ったものにdispatch.cgiがない

    Ruby on Railsで作成したものをApacheで動かそうとしたのですが、 「public/dispatch.cgi」などのファイルが存在しませんでした。 「.htaccess」も作成されていないようです。 InstantRails(Rails 2.0.2)で作成したものには上記ファイルは存在します。 何か必要なものがあるのでしょうか? 環境 -Windows XP + coLinux -Debian 5.0.2 -ruby 1.8.7 -rails 2.3.3 railsはapt-getとgemと両方入れています。 (どこかのサイトを参考にしたのですが、失念してしまいました・・・。) 入力 $ cd /var/www/rails $ rails myapp $ cd myapp $ script/generate scaffold note line:string $ rake db:migrate ls -a publicの結果 . 404.html 500.html images javascripts stylesheets .. 422.html favicon.ico index.html robots.txt

  • Railsのエラー

    Railsのエラーについての質問です。 コマンドプロントでデータベースを作成しようとしたところ、よくわからないエラーが発生してしまいました(><) >rake db:migrate と入力すると、 C:.../InstatntRails/ruby/bin/rake.bat:25:[BUG]Segmentation fault ruby 1.8.4(2005-12-24)[i386-mswin32] This application has requseted the Runtime to terminate it in an usual way. Please contact the application's support team for more infomation. と表示されてしまいます。。。 「ruby.bat」というファイルの25行目にバグがある? と思いファイルを確認してみました。 25行目は、 load 'rake' だけなのです! ちなみにMySQL5.0.22、ruby1.8.4,rails 1.1.0を利用しています。 バージョンが悪いのでしょうか? 初心者でしてよくわからい状況です。。。 詳しいかたがいましたら、ぜひアドバイスよろしくお願いします!!

  • MySQL上にRedmineのテーブルが作成できません

    WindowsXP上でRedmineを構築しようとして、 データベースをMySQLと考えていますが、 テーブルの作成でエラーとなっています。 手順としては、Ruby、Rails、MySQLを導入し、 MySQL上で'redmine'の空データベースを作成しました。 そして、RedmineのRakefileが存在するディレクトリ配下で テーブル作成するため以下のコマンドを実行したところ、 エラーとなりました。 C:\redmine>rake db:migrate RAILS_ENV="production" (in C:/redmine) rake aborted! no such file to load -- test/unit/error C:/ruby/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2383:in `raw_load_rakefile' (See full trace by running task with --trace) ファイルがロードできないと言っているようですが、 どこをどのようにしたら解決するのでしょうか? (もしやバージョンの問題?) ------------------------------------------- ■バージョン Redmine:0.8.4 C:\redmine>ruby -v ruby 1.9.1p0 (2009-01-30 revision 21907) [i386-mswin32] C:\redmine>gem list *** LOCAL GEMS *** actionmailer (2.1.2) actionpack (2.1.2) activerecord (2.1.2) activeresource (2.1.2) activesupport (2.1.2) rails (2.1.2) rake (0.8.7) C:\redmine>mysql --version mysql Ver 14.14 Distrib 5.1.35, for Win32 (ia32) ------------------------------------------- ■database.ymlの内容 production: adapter: mysql database: redmine host: localhost username: root password:(rootのパスワード) encoding: utf8

  • Ruby on Rails について

    Ruby on Railsでアプリケーションを作ります。 バージョンは:InstantRails-2.0-win 1、データベース表の作成: データベース名:myapp   テーブル名:peoples データベースを作成したら、MySQLを再起動します。 2、新規アプリケーションの作成: アプリケーション名:myapp Instant RailsウィンドウのIボタン⇒Rails Applications⇒Manage Rails Applicationsをクリックします。 Rails ApplicationsダイアログボックスのCreate New Rails App・・をクリックします。 コマンドプロンプト画面が表示されます。 rails myapp を入力します。 コマンドプロンプトのプロンプトが入力状態になって、コマンドプロンプトを閉じます。 Rails ApplicationsダイアログボックスのRefresh Listボタンをクリックしたら、myappアプリケーション名が追加されます。 3、アプリケーション・モデルの作成: InstantRails-2.0-winフォルダ ⇒ rails_apps ⇒ myapp ⇒ config ⇒ datebase.yml ファイルを開きます。 ↓に書き換えます。 development: adapter: mysql database: myapp timeout: 5000 username: root host: localhost   Instant RailsウィンドウのIボタン ⇒ Rails Applications ⇒ Open Ruby Console Windowをクリックします。 コマンドプロンプトが開きます。 cd myapp ruby script/generate model people を入力します。 4、コントローラの作成: コマンドプロンプトを開きます。 cd myapp ruby script/generate controller people を入力します。 コマンドプロンプトを閉じます。 InstantRails-2.0-winフォルダ ⇒ rails_apps ⇒ myapp ⇒ app ⇒ controllers ⇒ people_controller.rb ファイルを開きます。 class PeopleController<Application Controller scaffold :people ←←追加した行です。 end 5、新しいアプリケーションを起動 Rails ApplicationsダイアログボックスのRails Applications 欄の myappの所をチェックし、Start with Mongrelボタンをクリックします。 コマンドプロンプト画面が起動し、ポート番号が表示されます。 Webブラウザを起動し、アドレス欄に 一つは: 「http://localhost:people/list」を入力し、Enterキーを押します。 ↓Errorメッセージが表示されました。 NoMethodError in PeopleController#list undefined method `scaffold' for PeopleController:Class RAILS_ROOT: C:/taiyo/INSTAN~1.0-W/rails_apps/myapp   一つは: http://localhost:3000/people Enterキーを押します。 ↓Errorメッセージが表示されました。 NoMethodError in PeopleController#index undefined method `scaffold' for PeopleController:Class RAILS_ROOT: C:/taiyo/INSTAN~1.0-W/rails_apps/myapp どこの手順が違ってるのが解らなくて、 Errorの解決方法ですごく困ってます。 どうかご指導をお願いいたします。 もう一つはErrorメッセージの3行目は C:/taiyo/INSTAN~1.0-W/rails_apps/myappですけど、 InstantRails-2.0-winフォルダのはずですけど、 INSTAN~1.0-Wフォルダになった原因がよくわからないです。 すごく困ってます。 ご指導お願いいたします。

  • Ruby on Railsのmigrateについてです!

    初めまして、Ruby on Rails初心者の者です。 現在modelを5つ作成してあります。 そこで新たにmodel(6)を作成(コマンドプロンプトにて)したのですが、記述ミスがあったので今作成されたmodel(6)を削除しました。(データーベースからも) で、また同じ名前で作成したのですがエラーが何も表示されず、コマンドが入力できる状態になってしまいます。 ruby script/generate model モデル名  ↓正常 rake db:migrate  ↓何も表示されない コマンドが入力可能状態になる 何が原因なのでしょうか? 調べたのですが、私には分からずとても困っています 分かる方居ましたら、回答お願い致します。

    • ベストアンサー
    • Ruby
  • ruby on railsのmigrateでカラム名の変更ができません

    ruby on railsにて migrateでDBのカラム名を変更したいのですが、 エラーになってしまいます。 -エラーコード---------------------- rake aborted! uninitialized constant CreateArticles ----------------------------------- ★「datetime」カラム⇒「updated_at」カラムにしたい class RenameColumnArticles < ActiveRecord::Migration def self.up rename_column(:articles, :datetime, :updated_at) end def self.down rename_column(:articles, :updated_at, :datetime) end end よろしくお願いします。

  • rake db:migrateでのエラーについて

    WinXP環境で開発環境を構築中です。 MySQL Server 5.1のテーブルを作成するために、 rake db:migrateを実行しましたが、 「Multiple migrations have the name CreateSchedules」のエラーが発生します。 原因がよくわかりません。 どなたか、ご教示ください。

    • ベストアンサー
    • Ruby
  • Rails 本番サーバーでpassengerエラー

    お世話になっております。 現在進行中のプロジェクトをgit cloneにて共有リポジトリから本番環境のサーバーに移しアプリケーションにアクセスしようとしたところ、Passengerが以下の様なエラーを吐き出してしまい、その解決策が見いだせずにいます。 A source file that the application requires, is missing It is possible that you didn't upload your application files correctly. Please check whether all your application files are uploaded. A required library may not installed. Please install all libraries that this application requires. Error message: no such file to load -- rubygems/path_support 当方環境は以下の様になります。 【共通】 サーバー Apatch DB MySQL ruby1.9.2 【ローカルサーバー(開発環境)】 MacOS X Rails 3.2.2 【共有リポジトリ】 さくらVPS 【本番サーバー(デプロイ先)】 さくらVPS CentOS6 Raisls 3.2.5 初心者故今回この質問をさせていただく上で必要な情報が何かというところも曖昧です。大変恐縮なのですが、何か支離滅裂な個所がありましたらそちらも合わせてご指摘いただければと存じます。 以下実行内容ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー 【ローカルにてproductionモードでプロジェクトを実行するために以下を実行】 passengerのインストールと設定 → httpd.confの設定 → gemにてmysql2のインストール → mysqlにてDBの作成とそれに対するユーザー、パスワードを設定 → database.ymlの設定 → rake db:setup RAILS_ENV="production"を実行 補足:ここまでのプロセスでローカル環境にてproductionモードで動作しております。 この状態でgit commit → pushを行い、本番サーバーにてcloneを実行しております。 【サーバーサイドで実行したこと(公開ディレクリは/var/www/html以下はDocumetRootは/var/www/html/public/と設定してあります)】 公開ディレクトリ【html】にて共有リポジトリよりプロジェクトをclone → passengerのインストールと設定 → rake db:setup RAILS_ENV="production"を実行(末尾に--traceを付けcreateとmigrateも実行) ここまででhttp://ドメイン/コントローラー名にてプロジェクトにアクセスできると考えていたのですが、上記の様なエラーが発生し困っております。 繰り返しとなりますが、Rails初心者故上記に記させて頂いたプロセスにて足りなかったり余計であったりする個所もあるかと存じます。読みづらい文章の上大変恐縮ですが、そちら合わせてご指導いただければ幸いです。 宜しくお願い致します。

    • ベストアンサー
    • Ruby
  • さくらレンタルサーバー上でのredmineインストールについて

    こんにちは。始めまして。 どこに質問して良いのか迷ったのですがここで質問させて下さい。 現在さくらのレンタル鯖にredmineというwebプロジェクト管理アプリケーションを導入したく 色々情報をかき集めて、設定していったのですが何度やってもweb上でHTTP500エラーが出てしまいます。 大まかに自分が行った事を記載しますのでもし間違い等ありましたら指摘してくれるとうれしいです。 ■$HOME/local に必要環境をインストール (1)rubyのインストール(1.8.6) (2)rubygemのセットアップ(1.3.1) (3)railsのセットアップ(2.1.2) (4).bashrc ファイルにパスを通す (SQLは最初からさくらのサーバーに入っているそうです) ■$HOME/rails/redmine にredmine(0.7.3)をインストール $ cd $HOME/rails $ wget redmine-0.7.3.tar.gz $ tar zxvf redmine-0.7.3.tar.gz $ mv redmine-0.7.3.tar.gz redmine $ cd redmine $ chmod o+w tmp log ■redmine/config のデータベース設定の編集 $ cd $HOME/rails/redmine/config $ cp database.yml.example database.yml $ vi database.yml ↓変更前 /*---------------------------------------------------*/ production: adapter: mysql database: redmine host: localhost username: root password: encoding: utf8 /*---------------------------------------------------*/ ↓変更後 /*---------------------------------------------------*/ production: adapter: sqlite3 database: db/redmine.db timeout: 5000 /*---------------------------------------------------*/ ■データベースの作成 $ cd $HOME/rails/redmine/config $ rake db:migrate RAILS_ENV=production ここでno such file to load -- iconv言われ、iconvをインストール 更にno such file to load -- sqlite3と言われ、 $ gem install sqlite3-ruby 再度 $ rake db:migrate RAILS_ENV=production $ rake redmine:load_default_data RAILS_ENV=production ■アプリケーションの実行環境設定 設定ファイルの変更 (1) $ cd $HOME/rails/redmine/config $ vi environment.rb 先頭に以下を追加 /*---------------------------------------------------*/ $LOAD_PATH.push("/home/***/local/lib/ruby/site_ruby/1.8") $LOAD_PATH.push("/home/***/local/lib/ruby") ENV['GEM_HOME'] ||= '/home/***/local/lib/ruby/gems/1.8' ENV['PATH']+=':/home/***/local/bin' /*---------------------------------------------------*/ (2) $ cd $HOME/rails/redmine/public $ vi .htaccess 以下の行をコメントアウト #Options +FollowSymLinks +ExecCGI (3) $ cd $HOME/rails/redmine/public $ cp dispatch.cgi.example dispatch.cgi $ vi dispatch.cgi 文頭の /*---------------------------------------------------*/ #!/usr/bin/ruby  /*---------------------------------------------------*/ の部分を /*---------------------------------------------------*/ #!/home/***/local/bin/ruby ENV[’RAILS_ENV’] ||= ‘production’ /*---------------------------------------------------*/ に変更 ■webサーバーで表示するようシンボリックリンクを作成 $ cd $HOME/www $ mkdir test $ ln -s $HOME/rails/redmine/public $HOME/www/test/redmine このような設定で、http://***.sakura.ne.jp/test/redmine/にアクセスすると トップページが表示されるはずなのですが、何度やり直してもHTTP500エラーになってしまいます。 どなたかこれだけの情報で、間違いの点に気づく方いましたら教えてもらえるとうれしいです。 よろしくお願いします。

専門家に質問してみよう