回答編集履歴

1

追記

2019/11/14 12:10

投稿

asm
asm

スコア15147

test CHANGED
@@ -9,3 +9,51 @@
9
9
 
10
10
 
11
11
  もし実装する必要に駆られたならば、Railsとは別のロングポーリング対応のサーバーを開発・使用すると思います。
12
+
13
+
14
+
15
+ ---
16
+
17
+
18
+
19
+ **追記**
20
+
21
+
22
+
23
+ 試してはいませんが、こんな感じですかね
24
+
25
+ (複数人同時に接続するとリソース食い過ぎで酷いことになると思います。)
26
+
27
+
28
+
29
+ ```ruby
30
+
31
+ def wait_message(cnt)
32
+
33
+ dm = Dm.where("id > ?", cnt)
34
+
35
+ i = 0
36
+
37
+ sleep(1) until dm.exists? || (i+=1) > 60
38
+
39
+ return dm
40
+
41
+ end
42
+
43
+
44
+
45
+ def ajax
46
+
47
+ dm = wait_message(params[:message][:cnt].to_i)
48
+
49
+ respond_to do |format|
50
+
51
+ format.js
52
+
53
+ format.json{ render json: dm }
54
+
55
+ end
56
+
57
+ end
58
+
59
+ ```