私は次のコードを持っている:私が持っているshow.html.erbでライフ
<div id=countdown> <%= @game.running_time %></div>
:
def show
@game = $site.new_game_of_type(params[:id])
@game.start
end
def update_game_time
render :partial => 'countdown', :layout => false
end
と部分カウントダウン
Time: <div id="countdown"> </div>
<%= periodically_call_remote(:frequency => 0.5,
:update => 'countdown', :url => {:action => :update_game_time}) %>
をIショーで表示されるページにゲームを作成したいので、そこには多くのAjaxが移動しますが、ユーザーはどこでもクリックしません。コントローラーのすべてのアクションはJavascriptから呼び出されます。
@gameがnilであるというエラーが発生しました。メソッドupdate_game_time でも、ユーザーがそのページにいる間に@game変数を有効なままにすることはできますか?
答えをありがとう。 以前のクライアントイベントがなくても、サーバーがクライアントとの会話を開始できる方法はありますか? 0。5秒の更新は私のハックで定期的にサーバーを呼び出し、クライアントに情報を更新させます。それは私の知識の最高です – Jordi
なぜサーバーは接続/会話を開始すべきですか?私は上手く理解できていない気がします。 * nixプラットフォームでは、サーバーから要求を出すためにcronジョブ(http://en.wikipedia.org/wiki/Cron)を使うことができますが、このアプローチが良いかどうかは分かりません。あなたは達成しようとしていることについて少し具体的になりますか? – andi
私は基礎をなすエンジンを持っています。 Webインターフェイスを使用して、ユーザーに何が起こっているかを知り、プロセスとやりとりしたいと思っています。 ユーザーが新しいゲームを開始すると、エンジンはゲームの定義を読み、ユーザーインターフェイスを作成します。ゲームには時間制限があり、新しい着信データなどがあります。ユーザーに送信したいイベント。 これは可能ですが、私のポーリング手法は確かに効率的ではありません – Jordi