回答編集履歴

1

audio_tag周りの不具合の原因がわかったので、その内容を追記

2016/07/09 09:38

投稿

rifuch
rifuch

スコア1901

test CHANGED
@@ -1,4 +1,6 @@
1
1
  comic has_many soundsの関連であるにもかかわらず(modelのソースが)、データを送る段でsoundが一意に取得出来てないのが原因ではないかと思います。
2
+
3
+
2
4
 
3
5
  ```Ruby
4
6
 
@@ -16,15 +18,17 @@
16
18
 
17
19
  # それから、データを送信する
18
20
 
19
- send_data(@sound.upload_file, filename: 'hoge.mp3', type: 'audio/mp3')
21
+ send_data(@sound.upload_file, filename: 'hoge.mp3', type: 'audio/mp3') # <===send_dataでは失敗しました
20
22
 
21
23
  # 念のため、データ送信するときに、ファイル名及びファイルタイプでどのタイプのデータが送られているか示しておくとより安心かも
24
+
25
+ #
22
26
 
23
27
  end
24
28
 
25
29
 
26
30
 
27
- # 一応Viewも
31
+ # Viewも
28
32
 
29
33
  # 前略
30
34
 
@@ -39,3 +43,43 @@
39
43
  # 後略
40
44
 
41
45
  ```
46
+
47
+ 追記ーーーーーーーーーーーーーーーーーーーーーー
48
+
49
+
50
+
51
+ audio_tagが表示されないのは、オプションの付け方が間違ってたせいでした。
52
+
53
+ また、send_dataではaudio_tagが音楽を再生してくれません。
54
+
55
+ send_fileを使う必要があるようです。
56
+
57
+
58
+
59
+ 修正版
60
+
61
+ ```ここに言語を入力
62
+
63
+ def sound_for
64
+
65
+ @sound= Comic.find(params[:id]).sounds
66
+
67
+ send_file @sound.upload_file_path
68
+
69
+ end
70
+
71
+
72
+
73
+ # view
74
+
75
+ <% @comic.sounds.each do |sound| %>
76
+
77
+ <p><%= sound.user.username %>さんの投稿</p>
78
+
79
+ <%= audio_tag sound_for_comic_path(@coumic, sound_id: sound), controls: true %>
80
+
81
+ <% end %>
82
+
83
+ ```
84
+
85
+