質問編集履歴

5

文法の修正

2021/12/26 20:38

投稿

atyabo
atyabo

スコア34

test CHANGED
File without changes
test CHANGED
@@ -50,7 +50,7 @@
50
50
 
51
51
  data: data,
52
52
 
53
- dataType: 'json' // サーバーから返却される型
53
+ dataType: 'json', // サーバーから返却される型
54
54
 
55
55
  #このようにオプションをつけるとvoice以外の値も送れない
56
56
 

4

デバッグ結果を記載

2021/12/26 20:38

投稿

atyabo
atyabo

スコア34

test CHANGED
File without changes
test CHANGED
@@ -122,6 +122,42 @@
122
122
 
123
123
 
124
124
 
125
+ processData:falseを付けるとパラメータが渡せない
126
+
127
+ ```
128
+
129
+ 4: def new
130
+
131
+ 5:
132
+
133
+ 6: end
134
+
135
+ 7:
136
+
137
+ 8: def create
138
+
139
+ => 9: binding.irb
140
+
141
+ 10: @game=Game.new(
142
+
143
+ 11: fast_talking_score:params[:fast_talking_score],
144
+
145
+ 12: talking_time:params[:talking_time],
146
+
147
+ 13: word_count:params[:word_count],
148
+
149
+ 14: voice:params[:voice]
150
+
151
+
152
+
153
+ irb(#<GamesController:0x00007fad86d18b58>):001:0> params
154
+
155
+ => <ActionController::Parameters {"object Object"=>nil, "controller"=>"games", "action"=>"create"} permitted: false>
156
+
157
+ irb(#<GamesController:0x00007fad86d18b58>):002:0>
158
+
159
+ ```
160
+
125
161
  リダイレクト先のviewでは以下のようにaudio要素で再生させたいです。
126
162
 
127
163
  ```

3

ajax文の修正

2021/12/26 20:37

投稿

atyabo
atyabo

スコア34

test CHANGED
File without changes
test CHANGED
@@ -51,6 +51,10 @@
51
51
  data: data,
52
52
 
53
53
  dataType: 'json' // サーバーから返却される型
54
+
55
+ #このようにオプションをつけるとvoice以外の値も送れない
56
+
57
+ processData: false
54
58
 
55
59
  }).done(function(result){
56
60
 

2

初心者マーク

2021/12/26 20:30

投稿

atyabo
atyabo

スコア34

test CHANGED
File without changes
test CHANGED
@@ -34,7 +34,7 @@
34
34
 
35
35
  ```
36
36
 
37
- mediaRecorder.ondataavailable = function (event) {
37
+ mediaRecorder.ondataavailable = function (event){
38
38
 
39
39
    var voice= event.data;
40
40
 

1

コントローラの記述を加えました

2021/12/26 18:03

投稿

atyabo
atyabo

スコア34

test CHANGED
File without changes
test CHANGED
@@ -118,7 +118,59 @@
118
118
 
119
119
 
120
120
 
121
- リダイレクト先のviewでは以下のようにaudio要素で再生させたいです
121
+ リダイレクト先のviewでは以下のようにaudio要素で再生させたいです
122
+
123
+ ```
124
+
125
+ game.controller
126
+
127
+
128
+
129
+ def create
130
+
131
+
132
+
133
+ @game=Game.new(
134
+
135
+ fast_talking_score:params[:fast_talking_score],
136
+
137
+ talking_time:params[:talking_time],
138
+
139
+ word_count:params[:word_count],
140
+
141
+ voice:params[:voice]
142
+
143
+ )
144
+
145
+ if @game.save
146
+
147
+ respond_to do |format|
148
+
149
+ format.json { render json: { redirect: result_game_url(@game) } }
150
+
151
+ end
152
+
153
+ end
154
+
155
+ end
156
+
157
+
158
+
159
+ def result
160
+
161
+
162
+
163
+ @game= Game.find(params[:id])
164
+
165
+ #gonというgemでrails側からjavaスクリプトに変数を渡して使えるようにしています
166
+
167
+ gon.voice = @game.voice
168
+
169
+ end
170
+
171
+
172
+
173
+ ```
122
174
 
123
175
  ```
124
176
 
@@ -134,7 +186,7 @@
134
186
 
135
187
  post 送信で送られていた値を引数に入れて音声を再生させたい
136
188
 
137
- document.getElementById("audio").src = window.URL.createObjectURL(voice)
189
+ document.getElementById("audio").src = window.URL.createObjectURL(gon.voice)
138
190
 
139
191
  const audioElement = document.querySelector("audio");
140
192