SSブログ

Rubyでカレンダー2(やっぱりつまずき編) [プログラミング]

やはり、落語は世襲制にしちゃダメだよね。やはり、お笑いはハングリーさがないとダメですね。林家系みんな世襲にしちゃってるじゃん。こぶ平もいっ平も変な世襲しちゃって、タレントとしても落語家としても面白くない。落語はお笑いじゃなくて伝統芸能になっちゃうのかな、狂言みたいに。

ええと、カレンダーね。こんな感じでHTMLをRubyで組んでみる。コードは「だいなりしょうなり」などの変換が面倒なので、HTMLソースを見てくだされ。


2009年03月
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 31  


こんな感じで生成されればいいかな? 下のソースでできるのはちょっと違うけどやりたい事は同じ。まだ、きちんと表示できてないけど、これを土台にして日付をずらせばおしまいかな。日付をずらしたバージョンは、色々体裁を整えつつ、次の機会に。どうにもブラウザで読むには、「&<>"」を置換しないとダメなので、rubyで実質9行の変換スクリプトを作って手を抜いた。下のコードもそれでコンバートしたので、それも次回にちょこっと書いておきます。



#!/usr/local/bin/ruby
# 簡易カレンダー ver.1

require "date"
require 'cgi'

# 曜日
def printWeek
  print <<EOS;
    <tr>
    <th>日</th>
    <th>月</th>
    <th>火</th>
    <th>水</th>
    <th>木</th>
    <th>金</th>
    <th>土</th>
    </tr>
EOS
end


# 日付(ここを作り直せば終わり!)
def printDays(t)
  
  (0..5).each do |week|
    puts "<tr>"
    (1..7).each do |day|
      print "<td>"
      print week*7 + day
      print "</td>"
    end
    puts "</tr>"
  end

end


# カレンダーの書き込み

cgi = CGI.new
print cgi.header("text/html")

print "<table><caption>"
t = Date.today
print t.to_s
print "</caption>"

printWeek
printDays t



タグ:Ruby
nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。