質問編集履歴
3
追記2を追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -109,4 +109,10 @@
|
|
109
109
|
</div>
|
110
110
|
<%= f.submit "投稿", class: "btn btn-green" %>
|
111
111
|
<% end %>
|
112
|
-
```
|
112
|
+
```
|
113
|
+
|
114
|
+
---
|
115
|
+
|
116
|
+
【追記2】
|
117
|
+
Turbolinksが原因でブラウザが更新されず、
|
118
|
+
$(document).ready()が期待通り動作しないようでした。
|
2
コード修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -74,4 +74,39 @@
|
|
74
74
|
具体的な解決策が思いつかないという状況です。
|
75
75
|
|
76
76
|
お詳しい方、どうか力を貸してください。
|
77
|
-
よろしくお願いします。
|
77
|
+
よろしくお願いします。
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
---
|
82
|
+
|
83
|
+
【追記】
|
84
|
+
**すみません、表示ロジックを変更したので追記します。**
|
85
|
+
これまでは、前述したように一覧画面と投稿フォームを横並びの同一コントローラ・同一メソッド・同一ビューに記述していましたが、投稿フォームを同一コントローラ内の別のメソッド・別のビューに分離しました。
|
86
|
+
その結果、画面遷移した直後は変わらずタグフォーム部分が表示されないのですが、リロード(ブラウザを再読み込み)すると表示されるという状態になりました。
|
87
|
+
|
88
|
+
下記に変更後のソースコードを記載します。
|
89
|
+
```Ruby
|
90
|
+
■static_pages_controller.rb
|
91
|
+
def contibute
|
92
|
+
if logged_in?
|
93
|
+
#本当はここで下記のようにform_forに渡す空のモデルオブジェクトを生成したいが、エラーになってしまうため、viewに直接記述して暫定対応。
|
94
|
+
#余裕のある時に見直す
|
95
|
+
#@bookpost = current_user.bookposts.build
|
96
|
+
else
|
97
|
+
redirect_to signup_path
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
|
102
|
+
■view(フォーム)
|
103
|
+
<!-- 本当はform_forの引数にはコントローラで用意した@bookpostを渡すべき -->
|
104
|
+
<%= form_for(current_user.bookposts.build) do |f| %>
|
105
|
+
<label>タグ・カテゴリー</label>
|
106
|
+
<ul id="ctg-tags"></ul>
|
107
|
+
<div class="field">
|
108
|
+
<%= f.text_area :content %>
|
109
|
+
</div>
|
110
|
+
<%= f.submit "投稿", class: "btn btn-green" %>
|
111
|
+
<% end %>
|
112
|
+
```
|
1
誤記
title
CHANGED
File without changes
|
body
CHANGED
@@ -10,8 +10,7 @@
|
|
10
10
|
■static_pages_controller.rb
|
11
11
|
def home
|
12
12
|
if logged_in?
|
13
|
-
@bookpost = current_user.bookposts.build
|
13
|
+
@bookpost = current_user.bookposts.build
|
14
|
-
flash[:success] = params[:selected_tag].present? ? Bookpost.tagged_with(params[:selected_tag]) : current_user.bookposts.build
|
15
14
|
@feed_items = params[:selected_tag].present? ? current_user.feed.tagged_with(params[:selected_tag]).paginate(page: params[:page])
|
16
15
|
: current_user.feed.paginate(page: params[:page])
|
17
16
|
end
|