2010年9月28日火曜日

event_calendarを使う

結局行事予定にはevent_calendarを使うことに。だって便利なpluginがあるんだからまずそれを使いこなせるようにならなくちゃ。

event_calendarをプロジェクトにインストールするところまでは簡単。実際にそれを使うには試行錯誤の連続ですな。

rails g event_calender --use_all_day

と入力するとevent.rbというモデルを作ってくれます。オプションの「--use_all_day」は1日中のイベントを使うかどうか、ですね。
データベースに記録してカレンダーに表示できるようにするには、eventのコントローラがいる。ここからは自力。

NetBeansの右クリックメニューからeventのコントローラーを生成して、とりあえずnewとcreateを定義する。


def create
@event = Event.new(params[:event])

respond_to do |format|
if @event.save
format.html { redirect_to(@event, :notice => 'Event was successfully created.') }

else
format.html { render :action => "new" }

end
end
end

def new
@event = Event.new

respond_to do |format|
format.html # new.html.erb

end
end

newのviewはこんな感じのform。

<%= form_for(@event) do |f| %>
<% if @event.errors.any? %>

<%= pluralize(@event.errors.count, "error") %> prohibited this post from being saved:




    <% @event.errors.full_messages.each do |msg| %>
  • <%= msg %>

  • <% end %>


<% end %>


<%= f.label :name %>

<%= f.text_field :name %>


<%= f.label :start_at %>

<%= f.datetime_select :start_at %>


<%= f.label :end_at %>

<%= f.datetime_select :end_at %>


<%= f.submit %>

<% end %>

今のところイベント名と開始時刻、終了時刻を入れるだけ。なにかイベントを入力してからlocalhost:3000/calendarにアクセスすると、無事イベントがカレンダーに表示される、と。

これが最初の一歩ですな。

0 件のコメント:

コメントを投稿