(その5)ubuntu9.10でRuby on Rails&MySQLをインストール

使用PC

IBM ThinkPad X40

参考書

IPA情報処理推進機構)配布の無料テキスト
Ruby on Rails開発(教材本体)
http://www.ipa.go.jp/software/open/ossc/seika_1005_1.html

現在113ページまで学習した。
が、いまいちよく理解していない自覚が強い。
この状態で先に進んでも無意味なので、もう一度、基本的な理解を深めてから前に進みたい。

いままで学習というか流し読みした項目は以下のとおり。

第5章 コントローラとビュー(1)
第6章 コントローラとビュー(2)
第7章 データベース接続とスキーマ定義

途中、サンプル再現できなかった項目もある。

(その4)ubuntu9.10でRuby on Rails&MySQLをインストール

使用PC

IBM ThinkPad X40

参考書

IPA情報処理推進機構)配布の無料テキスト
Ruby on Rails開発(教材本体)
http://www.ipa.go.jp/software/open/ossc/seika_1005_1.html

現在70ページまで学習した。

RubyOnRailsを使って、じゃんけんゲームアプリを作成した。

データベースを使っていないのでアプリというほど大げさなものではない。
作るのは簡単だった。全自動といえば言い過ぎだけど、それに近いスピード感で作れた。

HTMLテンプレートを生成して、それをうまく連携させる機能が標準装備されているので、
RoRは便利。うまく使いこなせればカッコイイ。


使用したグーチョキパー画像ファイルをアップロードしておきます。
ご自由にどうぞ。(200×200 png画像)

(その3)ubuntu9.10でRuby on Rails&MySQLをインストール

使用PC

IBM ThinkPad X40

参考書

IPA情報処理推進機構)配布の無料テキスト
Ruby on Rails開発(教材本体)
http://www.ipa.go.jp/software/open/ossc/seika_1005_1.html

現在32ページまで学習した。


・スキャフォルドの生成
scaffoldとは足場という意味。
スキャフォルドは生成すると、それはアプリケーションとして動作する。
本当に簡単に動作するものができる。

$ cd ~/rails
$ rails _2.3.2_ -d mysql keyaki
$ cd keyaki
$ rake db:create

keyakiというフォルダを生成。
cardsという名のテーブルをスキャンフォルドするためのものを生成。(28ページ参照)

$ ./script/generate scaffold Card name:string
address:string birthday:date

以下のファイルが生成される。

● app/views/cards/index.html.erb
● app/views/cards/show.html.erb
● app/views/cards/new.html.erb
● app/views/cards/edit.html.erb
● app/views/layouts/cards.html.erb
● public/stylesheets/scaffold.css
● app/controllers/cards_controller.rb
● test/functional/cards_controller_test.rb
● app/helpers/cards_helper.rb
● test/unit/helpers/cards_helper_test.rb
● app/models/card.rb
● test/unit/card_test.rb
● test/fixtures/cards.yml
● db/migrate/20090510130326_create_cards.rb

そして、マイグレーションを実行。

$ rake db:migrate
$ ./script/server

ブラウザに下記アドレスを入力してアクセス

http://localhost:3000/cards


デフォルトのままでは、西暦のプルダウンメニューが2005年〜2015年の間しか選択できない。これを変更してみる。


app/views/cards/new.html.erb

<%= f.date_select :birthday %>

これを、Railsのサイトで調べて、
以下のように変更する。

http://api.rubyonrails.org/
http://ruby-doc.org/core-1.8.7/index.html
http://ruby-doc.org/stdlib/

<%= f.date_select :birthday, :start_year
=> 1890, :end_year => 2010 %>

上記のように具体的な西暦年を入力するのもいいが、
end_yearは経年により変化するのだから、

<%= f.date_select :birthday, :start_year
=> Date.today.year-200, :end_year => Date.today.year %>

Date.today.year とすることで、常に最新の西暦年を表示してくれるようになる。以下のサイトにそう書いてありました。

Rails'wiki
http://wiki.fdiary.net/rails/?ActionViewHelper

ちなみに、磯野波平さん(1895年09月14日生まれ)のカードは、以下のようになる。

今日は、ここまで。


RoRは、スクリプトを書き換えればすぐ反映してくれるので、拍子抜けするくらい簡単だ。
趣味でNscripterを使っているので、使用感が近く、親しみやすい。



    
    
  

(その2)ubuntu9.10でRuby on Rails&MySQLをインストール

使用PC

IBM ThinkPad X40

参考書

IPA情報処理推進機構)配布の無料テキスト
Ruby on Rails開発(教材本体)
http://www.ipa.go.jp/software/open/ossc/seika_1005_1.html

現在24ページまで学習した。

今日やったこと
1.

database.ymlファイル先頭の置き換え
rails/config/database.yml
の、Mysql用の記述の置き換え(修正)
デフォルトではsqlite3のものになっているので、
mysql用に置き換えた。

実は、この作業の順序を間違えたために、いろいろインストールしなおすことになった。


2.モデル、ビュー、コントローラの生成

$ cd ~/rails
$ rails _2.3.2_ -d mysql kaede
$ cd kaede
$ rake db:create

フォルダを作ったあと、

$ ./script/generate model Book title:string
author:string published_on:date

このコマンドを実行して生成する。
それから

$ rake db:migrate

3.マイグレーションを実行。
データベースにテーブルを作成するために必要らしい。


4.このあとMysqlを実行して、

$ mysql -u root kaede_development
mysql> show tables;
+-----------------------------+
| Tables_in_kaede_development |
+-----------------------------+
| books                       |
| schema_migrations           |
+-----------------------------+
2 rows in set (0.00 sec)

そして、テーブル表示

mysql> show columns from books;
+--------------+--------------+------+-----+---------+----------------+
| Field        | Type         | Null | Key | Default | Extra          |
+--------------+--------------+------+-----+---------+----------------+
| id           | int(11)      | NO   | PRI | NULL    | auto_increment |
| title        | varchar(255) | YES |      | NULL    |                |
| author       | varchar(255) | YES |      | NULL    |                |
| published_on | date         | YES |      | NULL    |                |
| created_at   | datetime     | YES |      | NULL    |                |
| updated_at   | datetime     | YES |      | NULL    |                |
+--------------+--------------+------+-----+---------+----------------+
6 rows in set (0.00 sec)

こうなれば、教科書どおりなのだけど、1回目は表示されなかった。
わたしのエラーは、以下の記述を含んでいたので、

TCPServer Error: Address already in use - bind(2)
/usr/lib/ruby/1.8/webrick/utils.rb:73:in `initialize': Address already in use - bind(2)

見当はずれなような気もするけど、対処法をググった結果、

RAILSforum
http://railsforum.com/viewtopic.php?id=16387

上記サイトに行き当たり、

$ lsof|grep 3000


このコマンドを実行して、以下のような意味合いの行が表示されたので、

ruby   ●●●●   adam   4u  IPv4
take the number in second position (6205 in this case) and in ||<


上記の四桁の数字部分をkillしたら、
>|ruby|
$ kill -9 ●●●●

上記フォーラムでは(note -9 is separate from the pid)と書いてあったけど、現段階ではよくわからない。
この処置のあと、mysqlコマンドを試してみたら、ちゃんと教科書どおりテーブルなどを表示してくれた。


きょうは、これで終わり。
あきらめずにやれば、プログラムは動いてくれるようだ。


 

実践WordPress自動更新ブログ-RSSフィードとプラグインを使うと簡単にできる

下記サイトによると…

RSS Feedをブログ記事として自動投稿するWordPress プラグイン – FeedWordPress | 清音のSEOブログ

WordPRessにはプラグインという機能がある。
ブログにアクセス解析機能などの便利な機能を追加できらしい。


FeedWordPress
好きなサイトのRSSフィードを登録すれば、
1日1回、フィード内容を記事として自動更新してくれる。


サンプルページはコチラ

RSSフィードを自動で記事にするブログ
http://bbata.com/

使い方は簡単。


1.WordPressダッシュボード画面ひだり側にある「プラグイン」そばの
「▼」をクリックすると表示される「新規追加」をクリック

2.空のテキストボックスに FeedWordPress と入力して検索ボタンをクリック

3.見つかったらインストール
4.ふたたびダッシュボード画面ひだり側にある「プラグイン」をクリック
5.FeedWordPressの「有効化」をクリック

6.ダッシュボード初期画面みぎ側のテキストボックスにRSSフィードを入力。「+」クリック。

7.「use the Feed」をクリック

8.「更新」をクリック

9.ブログトップページにアクセス。即座に、記事が自動更新されます。

更新頻度は、よくわからないけど1日1回くらい??
それとも手動なのかもしれない。わからない。
こんなブログを作って何か意味があるのかといえば、あまり無いです。
自動化すげー、というお話でした。
>> この記事をツイッターで紹介 <<
富井雅彦(29) (zenolog) のTwitterをフォローする

ロリポップ!でWordPressブログを構築する

1.プラン比較表 / サービス - ロリポップ!で月額315円のロリポプランに申込む。
(初期費用¥1,575)+(¥315×1ヶ月)=¥1,890

ただし、1年に数回、初期費用無料キャンペーンがある。

2.管理画面の左側の簡単インストールをクリック

3.WordPressの「利用する」をクリック

4.インストール先URLを入力

画面下部のサイトURLやサイト管理者URLはコピペしてメモっといたほうが良い。
5.WordPress設定画面で、サイト名などを入力。

6.構築完了

表示されるメッセージが、おもわず微笑を誘った。
拍子抜けするほどカンタンでした。

http:// サイトURL /wp-admin/
ログインしてアクセスすれば、管理画面が表示されます。
例:http://bbata.com/wp-admin/

>> この記事をツイッターで紹介 <<
富井雅彦(29) (zenolog) のTwitterをフォローする


ubuntu9.10でRuby on Rails&MySQLをインストール

参考になるページはないかと探した結果、

独立行政法人 情報処理推進機構
RubyによるWebアプリケーション開発 教育プログラム(PDF形式)
http://www.ipa.go.jp/software/open/ossc/seika_1005_1.html

linuxRuby on Railsを導入する方法が記載されている教科書が
無償で公開されている。わかりやすい内容だった。


ちなみに、上記PDFをubuntu9.10で開いても日本語が表示されないばあい、ターミナル(端末)で以下のコマンドを実行すると、日本語が表示されるようになる。

sudo apt-get install poppler-data


参考サイト
俺様Linux備忘録 | PDFファイルを見ても日本語表示されない

今回、MySQLでデータベースを新規作成するところまで出来た。
その際、configファイルが前述の参考書内容ではうまくいかず、
いろいろググった結果、以下のサイトの提示する方法で、
データベース新規作成に成功した。

参考サイト
Ruby on Rails: rake db:create → “Couldn’t create database for …

英語のページだけど、configの記述だけコピペすればよい。


adapterやencodingの直前の空白は、当初、2文字インデントにしていたが、それではエラーになったので、半角スペース2文字に置き換えたらうまくいった。ubuntu9.10のgeditで編集を行っていたのと何か関連があるのだろうか。わからない。