スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

バージョン違いってことですか。

山田祥寛『Ruby on Rails 3 アプリケーションプログラミング』を使ってRailsの勉強をしていますが、結構使用が変わってるみたいで、困る。

フィクスチャでテストデータを流し込もうと、

$ rake db:fixtures:load FIXTURES=books.yml



すると、エラー。

いろいろ試してみた結果、正しくはこうらしい。

$ rake db:fixtures:load FIXTURES=books



はい、拡張子がいらなかったっていうね。

というわけで、Railsはわりと頻繁に仕様変更するっぽいのでご注意ください。
まあ、本に書いてあるバージョンにしない俺が悪いんですけどw
スポンサーサイト

バイク オイル交換

オイル換えたいと思い始めて1ヶ月。

ようやくインクラのオイルを換えてきましたよっと。
今回はフィルター交換無しなので、3.0L。

交換後メーター:26420 km

次回はフィルター交換しないといけないので、フィルター代・工賃、そして、オイルが3.7L……。

辛いぜ。

RoR Rake db::migrate できない。

やっと動くようになったRails上にマイグレーションファイルでテーブルを作ろうとすると、エラー発生。

$ rake db:migrate
(in /home/user/rails)
rake aborted!
uninitialized constant Rake::DSL
/home/user/rails/Rakefile:7
(See full trace by running task with --trace)



ググるとここに行き着いた。

http://d.hatena.ne.jp/nayuko22/20110728/1311837082

書かれている通り、Rakefileをエディタで開いて、require 'rake/dsl_definition'を追記。

Rakefile

#!/usr/bin/env rake
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be availab$

require File.expand_path('../config/application', __FILE__)
require 'rake/dsl_definition'

Railbook::Application.load_tasks



「この定数はすでに定義されてるよ☆」と警告されるが、とりあえず動くので見なかったことにして終了。

Ruby on Rails ようやく rails server できるように!

【環境】
Ubuntu 11.10
Rails 3.2.3

前回、なんとかかんとかRailsをインストールできたので、喜び勇んで

$ rails new test



と実行したところ、

Invalid gemspec in [/var/lib/gems/1.8/specifications/sass-rails-3.2.5.gemspec]: invalid date format in specification: "2012-03-19 00:00:00.000000000Z"
(中略)
Could not find jquery-rails-2.0.2 in any of the sources
Run `bundle install` to install missing gems.



といったエラーが発生。
言われたとおりに bundle install してみたところ、bundle入ってないよ! と怒られたので、言われたとおりにインストールして、もう一度 bundle install。

$ sudo apt-get install ruby-bundler
$ bundle install
Invalid gemspec in [/var/lib/gems/1.8/specifications/sass-rails-3.2.5.gemspec]: invalid date format in specification: "2012-03-19 00:00:00.000000000Z"
(中略)
Could not find jquery-rails-2.0.2 in any of the sources
Run `bundle install` to install missing gems.
(中略)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.



日付の形式がどーのこーのというメッセージが気になるが、completeと出たので意気揚々と rails server してみる。

$ rails server
Invalid gemspec in [/var/lib/gems/1.8/specifications/sass-rails-3.2.5.gemspec]: invalid date format in specification: "2012-03-19 00:00:00.000000000Z"
(中略)
Could not find jquery-rails-2.0.2 in any of the sources
Run `bundle install` to install missing gems.



おい、bundle install しただろ……orz
というわけで、とりあえず、エディタで日付の形式を修正して、再び rails server してみると、またしてもエラー。

$ rails server
/var/lib/gems/1.8/gems/execjs-1.3.0/lib/execjs/runtimes.rb:50:in `autodetect': Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)



なんかもう訳わからないので、必死ににググる。
結果、下のサイトを発見。

http://shun-ichiro.blogspot.jp/2011/12/rorrails-server.html

リンク先のサイトに書かれているとおりに、Gemfileに

require 'therubyracer'



を書き加えて、再び bundle installすると、いろいろ言われます。
(ちなみに、Gemfile は rails new で作ったフォルダにあるものです。「Gemfileってどこー!?」と find / -name Gemfile とかすると大変なことになるので注意w)

$ bundle install
(中略)
Invalid gemspec in [/var/lib/gems/1.8/specifications/libv8-3.3.10.4-x86-linux.gemspec]: invalid date format in specification: "2011-11-15 00:00:00.000000000Z"
Invalid gemspec in [/var/lib/gems/1.8/specifications/libv8-3.3.10.4-x86-linux.gemspec]: invalid date format in specification: "2011-11-15 00:00:00.000000000Z"
Invalid gemspec in [/var/lib/gems/1.8/specifications/libv8-3.3.10.4-x86-linux.gemspec]: invalid date format in specification: "2011-11-15 00:00:00.000000000Z"
Could not find gem 'therubyracer (>= 0)' in any of the gem sources listed in your Gemfile.
Run `bundle install` to install missing gems.



いろいろ言われますが、とりあえず簡単に修正できそうな上記の部分から修正して、bundle install すると、

Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.



喜び勇んで、rails server!

$ rails server
=> Booting WEBrick
=> Rails 3.2.3 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2012-04-16 17:13:09] INFO WEBrick 1.3.1
[2012-04-16 17:13:09] INFO ruby 1.8.7 (2011-06-30) [i686-linux]
[2012-04-16 17:13:09] INFO WEBrick::HTTPServer#start: pid=5830 port=3000



というわけで、とりあえず無事動きました。

Ubuntu Ruby on Rails 入らない

サーバーにRailsを入れようと、以下のコマンドを入力。

$ sudo gem install rails

Successfully installed rails-3.2.3



余裕だぜ! と思っていたのも束の間。

$ rails -v
The program 'rails' is currently not installed. You can install it by typing:
sudo apt-get install rails



……なんでだよ。

ここで再インストールしてみたり、gemを入れなおしてみたり、apt-getで入れてみたり、数時間ハマった結果、下のサイトに行き着きました。

http://d.hatena.ne.jp/satake7/20080219/1207895317

というわけで、シンボリックリンクを貼ってとりあえず解決。

$ sudo ln -s /var/lib/gems/1.8/bin/rails /usr/bin/rails

$ rails -v
Rails 3.2.3

ubuntu FTPサーバー vsftpd インストール

FTPサーバーとしてvsftpdを入れました。
インストールは普通に、

$ sudo apt-get install vsftpd



そして、設定ファイルをテキトーにいじってvsftpdを再起動。

$ sudo emacs /etc/vsftpd.conf

local_enable=YES
write_enable=YES
local_umask=022

$ sudo /etc/init.d/vsftpd restart



そこで、別のマシンからファイルをアップロードしてみると、Permission denied.
vsftpd.confを一通りいじっても解決しないので、chmodでパーミッションを777にしてみるとアップロード可能に。

セキュリティ的にどうなのかは、知らない。

php インストール

Apache2でphpをさばけるようにしました。
とはいえ、これだけ。

$ sudo apt-get install php5



あとは、Apacheを再起動するだけ。

$ sudo /etc/init.d/apache



普通、libapache-php〜〜〜みたいなファイルを入れないといけない気がするんだが、これで動いたのでおkとします。

Ubuntu Wirelessgate ワイヤレスゲート

Ubuntu 11.10 でワイヤレスゲートの接続に成功しました。
公式サイトには対応OSとしてLinuxとかUbuntuが書かれてませんが、普通にWEPキー設定したらいけましたいえー!

ちなみに、今これをマクドナルドで書いてます。
横浜ダイエー前のマクドナルドで、下り2.08Mbps。

上々じゃないっすか。
カレンダー
03 | 2012/04 | 05
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 - - - - -
検索フォーム
カテゴリ
月別アーカイブ
最新記事
最新コメント
最新トラックバック
RSSリンクの表示
QRコード
QR
リンク
アクセス解析
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。