質問編集履歴
3
いらない情報の修正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
プログラミング初心者です。
|
|
4
4
|
RailsでToDOアプリを作っています。
|
|
5
|
-

|
|
5
|
+

|
|
6
|
+
画像のようにボタンを押したとき更新、作成日時を非表示する機能を作りました。
|
|
6
7
|
|
|
7
|
-
そこで更に優先順位1以外のタスクを新
|
|
8
|
+
そこで更に優先順位1以外のタスクを 新規作成するボタンを押したときに表示、非表示する機能を追加したいのです。
|
|
8
|
-
優先順位が高い順にタスクが表示されるように設定しています。
|
|
9
|
+
今の所優先順位が高い順にタスクが表示されるように設定しています。
|
|
9
10
|
優先順位2以上のタスクを表示、非表示にするにはどうすればいいでしょうか?
|
|
10
11
|
またこの問題を解決するにはどういう前提知識が必要になりますでしょうか?
|
|
11
12
|
よろしくおねがいします。
|
|
@@ -15,9 +16,9 @@
|
|
|
15
16
|
|
|
16
17
|
### 該当のソースコード 質問が初めてなので、載せれるだけ載せます。足りない情報があれば指摘していただけると助かります。
|
|
17
18
|
|
|
18
|
-
show.html.erb
|
|
19
|
+
show.html.erb
|
|
19
20
|
|
|
20
|
-
|
|
21
|
+
```
|
|
21
22
|
<% if @user.tasks.any? %>
|
|
22
23
|
<span class="btn-sticky">すべての更新、作成日時を表示,非表示</span>
|
|
23
24
|
<% @user.tasks.each do |task| %>
|
|
@@ -40,6 +41,7 @@
|
|
|
40
41
|
<li class="active">
|
|
41
42
|
<%= paginate @tasks %>
|
|
42
43
|
</li>
|
|
44
|
+
|
|
43
45
|
<!--ボタンが押されたら更新・作成日時を非表示にする。h3がターゲット-->
|
|
44
46
|
<script>
|
|
45
47
|
$("span").click(function () {
|
|
@@ -68,9 +70,6 @@
|
|
|
68
70
|
skip_before_action :verify_authenticity_token
|
|
69
71
|
|
|
70
72
|
def index
|
|
71
|
-
# @tasks = Task.all
|
|
72
|
-
# @tasks = Task.page(params[:page]).per(10)
|
|
73
|
-
@task = current_user.tasks.build if logged_in?
|
|
74
73
|
end
|
|
75
74
|
|
|
76
75
|
def new
|
|
@@ -115,6 +114,7 @@
|
|
|
115
114
|
end
|
|
116
115
|
|
|
117
116
|
private
|
|
117
|
+
|
|
118
118
|
#ストロングパラメーター
|
|
119
119
|
def task_params
|
|
120
120
|
params.require(:task).permit(:title, :content, :priority)
|
|
@@ -124,7 +124,6 @@
|
|
|
124
124
|
@task = current_user.tasks.find_by(id: params[:id])
|
|
125
125
|
redirect_to root_url if @task.nil?
|
|
126
126
|
end
|
|
127
|
-
|
|
128
127
|
end
|
|
129
128
|
```
|
|
130
129
|
|
|
@@ -134,7 +133,7 @@
|
|
|
134
133
|
class UsersController < ApplicationController
|
|
135
134
|
before_action :logged_in_user, only: [:index, :edit, :update, :destroy]
|
|
136
135
|
before_action :correct_user, only: [:edit, :update]
|
|
137
|
-
before_action :set_target_user, only: [:
|
|
136
|
+
before_action :set_target_user, only: [:destroy, :edit, :update]
|
|
138
137
|
# before_action :admin_user, only: :destroy
|
|
139
138
|
|
|
140
139
|
def index
|
|
@@ -155,12 +154,6 @@
|
|
|
155
154
|
end
|
|
156
155
|
end
|
|
157
156
|
|
|
158
|
-
def show
|
|
159
|
-
@tasks = @user.tasks.page(params[:page]).per(8)
|
|
160
|
-
# @tasks = Task.page(params[:page]).per(5)
|
|
161
|
-
# @tasks = @user.tasks.page(page: params[:page])
|
|
162
|
-
end
|
|
163
|
-
|
|
164
157
|
def destroy
|
|
165
158
|
@user.destroy
|
|
166
159
|
flash[:success] = "退会しました。#{@user.name}さん。ご利用ありがとうございました!"
|
|
@@ -204,10 +197,10 @@
|
|
|
204
197
|
end
|
|
205
198
|
end
|
|
206
199
|
|
|
200
|
+
```
|
|
207
201
|
task.rb
|
|
208
202
|
|
|
209
|
-
```
|
|
203
|
+
```
|
|
210
|
-
```ここに言語を入力
|
|
211
204
|
class Task < ApplicationRecord
|
|
212
205
|
belongs_to :user
|
|
213
206
|
default_scope -> { order(priority: :asc) }
|
|
@@ -216,14 +209,12 @@
|
|
|
216
209
|
validates :title, presence: {message: 'タイトルを入力してください'},
|
|
217
210
|
length: {minimum: 2, message: '2文字以上で入力してください'}
|
|
218
211
|
validates :content, length: {maximum: 50, message: '登録できるのは50文字までです'}
|
|
219
|
-
|
|
220
212
|
end
|
|
221
213
|
```
|
|
222
|
-
|
|
214
|
+
|
|
223
215
|
### 試したこと
|
|
224
216
|
|
|
225
217
|
```ここに言語を入力
|
|
226
|
-
```ここに言語を入力
|
|
227
218
|
<script>
|
|
228
219
|
$("span").click(function () {
|
|
229
220
|
$("h3").toggle("slow");
|
|
@@ -231,78 +222,10 @@
|
|
|
231
222
|
</script>
|
|
232
223
|
|
|
233
224
|
```
|
|
234
|
-
|
|
235
|
-
```
|
|
236
225
|
の部分を色々試してみましたが機能しませんでした・・・
|
|
237
|
-
```
|
|
238
|
-
```
|
|
239
226
|
|
|
240
227
|
### 補足情報(Gemfile)
|
|
241
228
|
|
|
242
229
|
|
|
243
|
-
source 'https://rubygems.org'
|
|
244
230
|
|
|
245
|
-
git_source(:github) do |repo_name|
|
|
246
|
-
repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
|
|
247
|
-
"https://github.com/#{repo_name}.git"
|
|
248
|
-
end
|
|
249
|
-
|
|
250
|
-
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
|
|
251
|
-
gem 'rails', '~> 5.1.7'
|
|
252
|
-
gem 'puma', '~> 3.7'
|
|
253
|
-
# Use SCSS for stylesheets
|
|
254
|
-
gem 'sass-rails', '~> 5.0'
|
|
255
|
-
# Use Uglifier as compressor for JavaScript assets
|
|
256
|
-
gem 'uglifier', '>= 1.3.0'
|
|
257
|
-
# See https://github.com/rails/execjs#readme for more supported runtimes
|
|
258
|
-
# gem 'therubyracer', platforms: :ruby
|
|
259
|
-
gem 'bootstrap-sass', '3.3.7'
|
|
260
|
-
gem 'font-awesome-sass'
|
|
261
|
-
# Use CoffeeScript for .coffee assets and views
|
|
262
|
-
gem 'coffee-rails', '~> 4.2'
|
|
263
|
-
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
|
|
264
|
-
gem 'turbolinks', '~> 5'
|
|
265
|
-
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
|
|
266
|
-
gem 'jbuilder', '~> 2.5'
|
|
267
|
-
# Use Redis adapter to run Action Cable in production
|
|
268
|
-
# gem 'redis', '~> 4.0'
|
|
269
|
-
# Use ActiveModel has_secure_password
|
|
270
|
-
gem 'bcrypt', '~> 3.1.7'
|
|
271
|
-
gem 'kaminari'
|
|
272
|
-
gem 'rails-i18n', '~> 5.1'
|
|
273
|
-
# Use Capistrano for deployment
|
|
274
|
-
# gem 'capistrano-rails', group: :development
|
|
275
|
-
gem 'jquery-rails', '~>4.3.1'
|
|
276
|
-
group :development, :test do
|
|
277
|
-
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
|
|
278
|
-
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
|
|
279
|
-
# Adds support for Capybara system testing and selenium driver
|
|
280
|
-
gem 'mysql2'
|
|
281
|
-
gem 'capybara', '>= 2.15'
|
|
282
|
-
gem 'selenium-webdriver'
|
|
283
|
-
gem 'annotate'
|
|
284
|
-
end
|
|
285
|
-
|
|
286
|
-
|
|
231
|
+
rails 5.1.7
|
|
287
|
-
gem 'rails-controller-testing', '1.0.2'
|
|
288
|
-
gem 'minitest', '5.10.3'
|
|
289
|
-
gem 'minitest-reporters', '1.1.14'
|
|
290
|
-
gem 'guard', '2.16.2'
|
|
291
|
-
gem 'guard-minitest', '2.4.4'
|
|
292
|
-
end
|
|
293
|
-
group :development do
|
|
294
|
-
# Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
|
|
295
|
-
gem 'web-console', '>= 3.3.0'
|
|
296
|
-
gem 'listen', '>= 3.0.5', '< 3.2'
|
|
297
|
-
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
|
|
298
|
-
gem 'spring'
|
|
299
|
-
gem 'spring-watcher-listen', '~> 2.0.0'
|
|
300
|
-
gem 'pry-byebug'
|
|
301
|
-
end
|
|
302
|
-
group :production do
|
|
303
|
-
gem 'mysql2'
|
|
304
|
-
end
|
|
305
|
-
|
|
306
|
-
```
|
|
307
|
-
```
|
|
308
|
-
```
|
2
コメントアウトしていた部分の削除
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -90,14 +90,6 @@
|
|
|
90
90
|
render 'tasks/new'
|
|
91
91
|
end
|
|
92
92
|
end
|
|
93
|
-
# def create
|
|
94
|
-
# @task = Task.new(task_params)
|
|
95
|
-
# if @task.save
|
|
96
|
-
# redirect_to root_url
|
|
97
|
-
# else
|
|
98
|
-
# render 'new'
|
|
99
|
-
# end
|
|
100
|
-
# end
|
|
101
93
|
|
|
102
94
|
def update
|
|
103
95
|
@task = Task.find(params[:id])
|
1
追記と若干の修正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -4,12 +4,15 @@
|
|
|
4
4
|
RailsでToDOアプリを作っています。
|
|
5
5
|
画像のようにボタンを押したとき更新、作成日時を非表示する機能を作りました。
|
|
6
6
|
|
|
7
|
-
そこで更に優先順位1以外のタスクをボタンを押したときに表示、非表示する機能を追加したいのです。
|
|
7
|
+
そこで更に優先順位1以外のタスクを新しく作るボタンを押したときに表示、非表示する機能を追加したいのです。
|
|
8
|
-
優先順位が高い順にタスクが表示されるようにしています。
|
|
8
|
+
優先順位が高い順にタスクが表示されるように設定しています。
|
|
9
9
|
優先順位2以上のタスクを表示、非表示にするにはどうすればいいでしょうか?
|
|
10
10
|
またこの問題を解決するにはどういう前提知識が必要になりますでしょうか?
|
|
11
11
|
よろしくおねがいします。
|
|
12
12
|
|
|
13
|
+
追記:> 優先順位1以外のタスクをボタンを押したときにこのボタンはどのHTMLタグになりますか?
|
|
14
|
+
仮で<b>タグにする予定です。
|
|
15
|
+
|
|
13
16
|
### 該当のソースコード 質問が初めてなので、載せれるだけ載せます。足りない情報があれば指摘していただけると助かります。
|
|
14
17
|
|
|
15
18
|
show.html.erb
|