まず第一に、HTML と RAILS のコーディングは初めてです。しかし、学習経験の一環として、私が働いているラボ用のマシン予約システムを設計しました。その下に、名前、IP アドレスなどのマシンの詳細を表示するフォーム (show.html.erb) があります。以下に示すように、datetime_select、時間数オプションを含む予約フォームがあり、
ご覧のとおり、これは本当に基本的な html コーディングです。... マシンの詳細
名前: <%= @machine.name %>
IP アドレス: <%= @machine.ipaddress %>
プロセッサ: <%= @machine.processor %>
メモリ: <%= @machine.memory %>
動作中システム: <%= @machine.os %>
説明: <%= @machine.description %>
マシンの状態:
<% if @machine.active == true %>
オンライン
<% else %>
オフライン
<% end %>
< % if @machine.can_reserved == false %>
このマシンは予約できません。
<%終了%>
<fieldset>
<legend>Create a New Reservation</legend>
<p style="color: red"><%= flash[:error] %></p>
<%= form_for [@machine, @reservation] do |f| %>
<div class="field">
<%= f.label :startdate, 'Start Time' %>:
<%= f.datetime_select :startdate %> (<b>PST</b> timezone)
</div>
<div class="field">
<%= f.label :purpose, 'Reason' %>:
<%= f.text_field :purpose, :size => 40 %>
</div>
<div class="field">
<%= f.label :hour, 'Hour(s)' %>:
<%= f.text_field :hour, :size => 2 %>
</div>
<div class="field">
<%= f.label :days, 'No of Days' %>:
<%= f.text_field :days, :size => 2 %>
</div>
<div class="actions">
<%= f.submit 'Reserve this machine' %>
</div>
<% end %>
<br />
</fieldset>
... これで、マシンの [show action] をクリックすると、すべてが正しく実行されます。すべてのマシンの詳細を表示し、予約フォームに現在の時刻を表示します。しかし、1 分後にページを更新すると、マシンの詳細情報が更新されますが、datetime_select オプションで既に表示されている時刻は変更 (更新) されません。なんで?常に現在の時刻を表示するにはどうすればよいですか? ビューは静的ページに過ぎないことを理解しています。ページ全体を自動的に更新するタグをページに追加しましたが、datetime_select オプションに表示される日付には影響しないようです。
何かご意見は?本当に助かります。
ありがとう。
トム