teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

ターミナルエラー表示追加

2021/02/14 11:36

投稿

0W5E8fPq1EOm4yE
0W5E8fPq1EOm4yE

スコア13

title CHANGED
File without changes
body CHANGED
@@ -2,9 +2,23 @@
2
2
 
3
3
  発生している問題・エラー
4
4
  https://gyazo.com/7bb52e8a575e4e69ee8b1bccff26dce5
5
+ ```
6
+ ターミナル
7
+ ActionView::Template::Error (Missing partial likes/_way, application/_way with {:locale=>[:ja], :formats=>[:js, :html], :variants=>[], :handlers=>[:raw, :erb, :html, :builder, :ruby, :jbuilder, :haml]}. Searched in:
8
+ * "/Users/nishio/projects/original/app/views"
9
+ * "/Users/nishio/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/devise-4.7.3/app/views"
10
+ * "/Users/nishio/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/actiontext-6.1.1/app/views"
11
+ * "/Users/nishio/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/actionmailbox-6.1.1/app/views"
12
+ ):
13
+ 1: $('#way_<%= @way.id %>').html("<%= j(render "way", post: @way) %>");
14
+
15
+ app/views/likes/create.js.erb:1
16
+ Started GET "/rails/active_storage/disk/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDVG9JYTJWNVNTSWhaMncxZUdWaGRqTXhZVEV6TTNCdU1HRXlabTU0TW1KeVozUXhlUVk2QmtWVU9oQmthWE53YjNOcGRHbHZia2tpQWNacGJteHBibVU3SUdacGJHVnVZVzFsUFNJbE0wWWxNMFlsTTBZbE0wWWxNMFlsTTBZbE0wWWxNMFlsTTBZZ01qQXlNQzB4TWkweU1pQXlNQzQxTVM0ME55NXdibWNpT3lCbWFXeGxibUZ0WlNvOVZWUkdMVGduSnlWRk15VTRNaVZDT1NWRk15VTRNaVZCUmlWRk15VTRNeVZCUVNWRk15VTRNeVZDUXlWRk15VTRNeVZDTXlWRk15VTRNaVZDTnlWRk15VTRNeVZCTnlWRk15VTRNeVU0TXlWRk15VTRNeVU0T0NVeU1ESXdNakF0TVRJdE1qSWxNakF5TUM0MU1TNDBOeTV3Ym1jR093WlVPaEZqYjI1MFpXNTBYM1I1Y0dWSklnNXBiV0ZuWlM5d2JtY0dPd1pVT2hGelpYSjJhV05sWDI1aGJXVTZDbXh2WTJGcyIsImV4cCI6IjIwMjEtMDItMTRUMTE6Mzc6MzEuOTM1WiIsInB1ciI6ImJsb2Jfa2V5In19--1b2a0b8bdb3c3930c51acb9f96050a8036837a5c/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202020-12-22%2020.51.47.png" for ::1 at 2021-02-14 20:33:19 +0900
17
+ Processing by ActiveStorage::DiskController#show as PNG
18
+ Parameters: {"encoded_key"=>"[FILTERED]", "filename"=>"スクリーンショット 2020-12-22 20.51.47"}
19
+ Completed 200 OK in 1ms (ActiveRecord: 0.0ms | Allocations: 270)
20
+ ```
5
21
 
6
- POST http://localhost:3000/ways/8/likes 500 (Internal Server Error)
7
-
8
22
  該当するソースコード
9
23
  ```
10
24
  create.js.erb

1

2/14現在のものに新しく変更した。

2021/02/14 11:36

投稿

0W5E8fPq1EOm4yE
0W5E8fPq1EOm4yE

スコア13

title CHANGED
File without changes
body CHANGED
@@ -1,31 +1,37 @@
1
1
  jqueryは用いないでJavaScriptにていいね機能を実装しています。リロードしないと表示が変わらないといった問題があります。どうしたらリロードすることなくいいね機能が使えるようになるのかご教授いただければと思います。
2
2
 
3
3
  発生している問題・エラー
4
- https://gyazo.com/9f84ea915e7f1d9d4053994ecbd895e5
4
+ https://gyazo.com/7bb52e8a575e4e69ee8b1bccff26dce5
5
5
 
6
+ POST http://localhost:3000/ways/8/likes 500 (Internal Server Error)
7
+
6
8
  該当するソースコード
9
+ ```
7
10
  create.js.erb
8
11
 
9
- $('#<%= @way.id.to_s %>').html('<%= j render "ways/liked", { way: @way } %>');
12
+ $('#way_<%= @way.id %>').html("<%= j(render "way", post: @way) %>");
13
+ ```
14
+ ```
10
15
  destroy.js.erb
11
16
 
12
- $('#<%= @way.id.to_s %>').html('<%= j render "ways/liked", { way: @way } %>');
17
+ $('#way_<%= @way.id %>').html("<%= j(render "way", post: @way) %>");
18
+ ```
19
+ ```
13
20
  _like.html.erb
14
21
 
15
22
  <%= link_to(way_likes_path(@way), method: :POST, remote: true, class: "like") do %>
16
23
  <i class="btn btn-sm btn-outline-secondary">いいねを外す</i>
17
- <% end %>```
24
+ <% end %>
25
+ ```
18
26
  ```言語名
19
- _liked.html.erb
27
+ show.html.erb
20
28
 
21
- <%= link_to (way_like_path(@way.id, @way.liked_by(current_user)), method: :DELETE, remote: true, class: "liked") do %>
22
- <i class="btn btn-sm btn-outline-secondary">いいねを外す</i>
23
- <% end %>
24
29
  <%= render "devise/shared/header" %>
30
+ <body>
25
31
  <div class="col">
26
32
  <div class="card shadow-sm">
27
-
28
-
33
+
34
+
29
35
  <% if @way.image.attached? %>
30
36
  <%= image_tag @way.image %>
31
37
   <% end %>
@@ -33,33 +39,29 @@
33
39
  <video src="<%= rails_blob_path(@way.video) %>" type="video/mp4" controls></video>
34
40
  <% end %>
35
41
 
36
-
42
+
37
43
  <div class="card-body">
38
44
  <div class="card-text">
39
- <%#= image_tag @way.user.image %><%= @way.user.nickname %>
45
+ <%= @way.user.nickname %>
40
46
  </div>
41
47
  <p>
42
48
  <p class="card-text">
43
49
  <%= @way.text %>
44
50
  </p>
45
51
 
52
+ <tr>
53
+ <td>
46
- <div id="<%= @way.id.to_s %>">
54
+ <div id= "way_<%= @way.id %>">
47
- <% if @way.liked_by(current_user).present? %>
55
+ <%= render "way", post: @way %>
48
- <%= link_to(way_like_path(@way.id, @way.liked_by(current_user)), method: :DELETE, remote: true, class: "liked") do %>
49
- <i class="btn btn-sm btn-outline-secondary">いいねを外す</i>
50
- <% end %>
51
- <% else %>
52
- <%= link_to(way_likes_path(@way), method: :POST, remote: true, class: "like") do %>
53
- <i class="btn btn-sm btn-outline-secondary">いいね</i>
54
- <% end %>
55
- <% end %>
56
56
  </div>
57
+ </td>
58
+ </tr>
57
59
  </div>
58
60
 
59
61
  <div class="d-flex justify-content-between align-items-center">
60
62
  <small class="text-muted"><%= l @way.created_at %></small>
61
63
  <% if user_signed_in? && current_user.id == @way.user.id %>
62
-
64
+
63
65
  <div class="btn-group">
64
66
  <%= link_to '編集', edit_way_path, method: :get, class: "btn btn-sm btn-outline-secondary" %>
65
67
  <%= link_to '削除', way_path, method: :delete, class:'btn btn-sm btn-outline-secondary' %>
@@ -70,7 +72,7 @@
70
72
  </div>
71
73
 
72
74
  <div class="card-body">
73
- <% if user_signed_in? && current_user.id == @way.user_id %>
75
+ <% if user_signed_in? && current_user.id != @way.user_id %>
74
76
  <%= form_with model: [@way,@waycomment], local: true do |f|%>
75
77
  <div class="field form-group">
76
78
  <%= f.label :text, "コメント" %><br />
@@ -86,15 +88,18 @@
86
88
  <ul class="comments_lists">
87
89
  <%='コメント一覧'%>
88
90
  <% @waycomments.each do |waycomment| %>
91
+ <% if @waycomments %>
89
92
  <li class="card-text">
90
-
93
+
91
- <%= @waycomment.text %>
94
+ <%= waycomment.text %>
92
95
  </li>
93
96
  <% end %>
97
+ <% end %>
94
98
  </div>
99
+ </body>
100
+ ```
95
101
 
96
-
102
+ ```
97
-
98
103
  class WaysController < ApplicationController
99
104
  before_action :authenticate_user!, except: [:index, :show]
100
105
  before_action :set_way, only: [:show, :edit, :update, :destroy]
@@ -123,7 +128,7 @@
123
128
 
124
129
  def show
125
130
  @waycomment = Waycomment.new
126
- @waycomments = @way.waycomments.includes(:user)
131
+ @waycomments = @way.waycomments.includes(:user).order('created_at DESC')
127
132
  end
128
133
 
129
134
  def update
@@ -153,7 +158,8 @@
153
158
  @way = Way.find(params[:id])
154
159
  end
155
160
  end
156
-
161
+ ```
162
+ ```
157
163
  class LikesController < ApplicationController
158
164
  def create
159
165
  @like = current_user.likes.build(like_params)
@@ -173,5 +179,10 @@
173
179
  params.permit(:way_id)
174
180
  end
175
181
  end
182
+
183
+ ```
176
184
  自分で試したこと
177
- ・link_toメソッドにremote: trueを追記。
185
+ ・link_toメソッドにremote: trueを追記。
186
+
187
+ ・下記のurlを参考にcreate.js.erbとdestory.js.erb2つのjs.erbファイルに$(console.log("111"));を記述してコンソール場にて確認後、発火したいクラスの記述を行った。
188
+ https://qiita.com/yoshi-2015/items/6d5eb88abb2a4ef09f92#%E3%81%84%E3%81%84%E3%81%AD%E6%A9%9F%E8%83%BD%E3%81%AE%E5%A0%B4%E5%90%88