2007-12-01から1ヶ月間の記事一覧
インストールしたバージョンは次の通り。 ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32] rails-2.0.2 sqlite-3_5_4 sqlite3-ruby-1.2.1-x86-mswin32 RubyのインストールとRailsのインストールを2つの段階に分けて考える。まずはRubyから。 ActiveS…
paginateがなくなっていっそうシンプルになった。app/views/home/index.html.erb <% for entry in @entries %> <div class="entry"> <div class="date"> <%= entry.created_on.year %>年<%= entry.created_on.month %>月<%= entry.created_on.day %>日 </div> <h2><%=h entry.title %></h2> <div><%=h entry.body %></div> <%</div>…
undefined method `paginate' for #<HomeController:0xb75868b4>なにー。プラグインになったらしい。じゃあ使うのやめよ。</homecontroller:0xb75868b4>
1系以前の知識で設計していたのだけど、ちょっとそのままでは無理っぽい。特にURLにshowとか書く必要がなくなってて、以前の直感的なURLとコントローラの対応関係が変化してる。どっちのほうがより直感的なのかは置いておくとして、とにかく変わってる。あれ…
昨日無事にRails2.0.2がインストールできたので、今日はそれを使ってみる。 Railsでブログシステムを作る 簡単なブログを実装してみる。名前はブログのpipin。 プロジェクトの作成 rails --version #=> Rails 2.0.2 rails pipin cd pipin メモ。ここでデフォ…
現在の環境は以下の通り。on Debian。 ruby -v #=> ruby 1.8.5 (2007-06-07 patchlevel 52) [i686-linux] rails -v #=> Rails 1.2.3rubyはユーザーのローカルディレクトリにインストールしている。 まずはRubyを最新安定版のruby 1.8.6-p111に http://www.ru…
Rails 2.0.2でデフォルトDBがSQLite3に - idesaku blog 先日2.0.1をリリースしたばかりのRuby on Railsだが、早くも2.0.2がでてきた。このバージョンで、RailsのデフォルトDBがMySQLからSQLite3に変更されたそうだ。 これはうれしい気がする。全部SQLite3で…
はっきり言って、正規表現は苦手。正規表現は、日常的に使うけれど、他人に正確に説明するほどの自身はない。特に覚えられないのが、ここ。 ^ …… 行頭。文字列の先頭や改行文字の直後の位置にマッチします。 $ …… 行末。文字列の末尾や改行文字の直前の位置…
どんなのがいいだろう。 コードがわかりやすい シンプルに書ける 少ない文字数で書ける 無駄なことは書かなくていい 仕事に集中できる。ややこしい作業に煩わされない プログラミングが楽しい 比較的新しい言語。C/C++, Java, Perlよりも 言語設計がすばらし…
最新の開発版のRubyでは、ハッシュは登録した順序を記憶するようになりました。次のような処理を試してみると、登録した順序の通り処理が行われていることが確認できます。 # ruby 1.9.0 (2007-12-13 patchlevel 0) [i686-linux] a = { "tomato" => 120, "po…
class Kobito def initialize(tree, basket) @tree = tree @basket = basket @tiredness = 0 end def work unless @tree.empty? if tired? eat else carry end end end def tired? @tiredness >= 3 end def eat @tree.shift @tiredness = 0 end def carry @b…
赤ペンを持って校正。でも、それをPCに向かってフィードバックするのがめんどくさい。でも印刷して読み直すといろいろ見えてくるから仕方がない。昨日はフィードバックの日だった。今日はまた新しいところを書く日。メソッド定義が終わったから、次は配列ま…
気がつけばもう出ていた。出たとわかれば対策がうてるので、この時期で良かったといえば良かったのかな。
中盤の残りは、 配列の一部 メソッド クラスの一部 メソッドが手付かずなので、メソッドを書き進めてみよう。
あとはsubとブロックつきメソッドを使った文字列操作を残すのみ。 - ブロックつきメソッドを使った例、つまりscanやeach_lineは正規表現や配列の知識が必要なので、文字列のパートに書くのはやめた。文字列はひとまず終了。
ボツにした下書き。 オブジェクトとメソッド オブジェクトはいくつかのメソッドを持っています。たとえば文字列オブジェクトはupcaseというメソッドを持っています。文字列オブジェクトのupcaseメソッドを呼び出すには次のようにします。 "abc".upcase upcas…
文字列のところにレシーバやら、破壊的・非破壊的メソッドの話が入ってしまったので、内容がかぶってしまった。 クラスとオブジェクトの関係 classメソッド クラス、代表的なクラス オブジェクトとメソッド to_i to_s chomp 非破壊的である旨 a = a.to_i 以…
オブジェクトとクラスに関する話が、文字列の中にも結構出てきたので、オブジェクト単体の章が微妙になってきた。その前後の章をどう構成するか。ちょっと調整する必要が出てきたぞ。リテラルを変数の前に入れて、オブジェクトはその後ろにしてみよう。 変数…
「文字列」の前後は……。えっと、前は変数とリテラル、後は配列か。とすると、直前は基礎的なウンチク、その後は、いよいよ本格的なプログラミングの話になってくる配列と。とわいえ、配列はそれほど複雑な話ではない(最後のブロックつきメソッドの話を除け…
変数について書きました。あとは印刷して修正というのを数回繰り返せばよいでしょう。次は、メソッド定義か文字列です。