質問編集履歴
5
欲しい答えをもらいやすくするため
title
CHANGED
File without changes
|
body
CHANGED
File without changes
|
4
わかりやすくするため
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#### railsでタスクを完了したら経験値をもらって閾値を超えたらレベルアップするアプリを作っています。まずは経験値を取得するところから着手しようと思うのですが、その記述がわからなくて詰んでいます。タスクにポイントが設定されていてそれ
|
1
|
+
#### railsでタスクを完了したら経験値をもらって閾値を超えたらレベルアップするアプリを作っています。まずは経験値を取得するところから着手しようと思うのですが、その記述がわからなくて詰んでいます。タスクにポイントが設定されていてそれが完了したときにポイントを経験値として取得していく流れです。
|
2
2
|
```SQL
|
3
3
|
SELECT sum(tasks.point)` FROM users
|
4
4
|
LEFT JOIN tasks ON users.id = tasks.user_id
|
3
欲しい答えをもらいやすくするため
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,4 +5,49 @@
|
|
5
5
|
GROUP BY users.id
|
6
6
|
```
|
7
7
|
このようにSQLで取得できるとアドバイスをもらったのですがsequel proで値は確認できるものの、どのようにアプリの実装に使うのかがわかりません。
|
8
|
-
これと違う方法(ruby)もしくはこの使い方を教えていただけたらと思います。
|
8
|
+
これと違う方法(ruby)もしくはこの使い方を教えていただけたらと思います。
|
9
|
+
|
10
|
+
以下テーブルになります
|
11
|
+
|
12
|
+
```
|
13
|
+
## users テーブル
|
14
|
+
|
15
|
+
| Column | Type | Options |
|
16
|
+
| ------------ | ---------- | ----------------------- |
|
17
|
+
| name | string | null: false |
|
18
|
+
| email | string | null: false |
|
19
|
+
| password | string | null: false |
|
20
|
+
| player_level | integer | null: false, default: 1 |
|
21
|
+
| level_id | references | foreign_key: true |
|
22
|
+
|
23
|
+
## Association
|
24
|
+
|
25
|
+
- has_many :tasks
|
26
|
+
- belongs_to :level
|
27
|
+
|
28
|
+
|
29
|
+
## tasks テーブル
|
30
|
+
|
31
|
+
| Column | Type | Options |
|
32
|
+
| ------- | ---------- | ------------------------------ |
|
33
|
+
| content | string | null: false |
|
34
|
+
| user_id | references | foreign_key: true |
|
35
|
+
| point | integer | null: false, default: 1 |
|
36
|
+
|
37
|
+
## Association
|
38
|
+
|
39
|
+
- belongs_to :user
|
40
|
+
|
41
|
+
|
42
|
+
## レベルテーブル
|
43
|
+
|
44
|
+
| Column | Type | Options |
|
45
|
+
| --------- | ---------- | ------------------------------ |
|
46
|
+
| number | integer | |
|
47
|
+
| threshold | integer | |
|
48
|
+
|
49
|
+
## Association
|
50
|
+
|
51
|
+
- has_many :users
|
52
|
+
|
53
|
+
```
|
2
欲しい答えをもらいやすくするため
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#### railsでタスクを完了したら経験値をもらって閾値を超えたらレベルアップするアプリを作っています。まずは経験値を取得するところから着手しようと思うのですが、その記述がわからなくて詰んでいます。タスクにポイントが設定されていてそれを消したときにポイントを経験値として取得していく流れです。
|
1
|
+
#### railsでタスクを完了したら経験値をもらって閾値を超えたらレベルアップするアプリを作っています。まずは経験値を取得するところから着手しようと思うのですが、その記述がわからなくて詰んでいます。タスクにポイントが設定されていてそれを消したときにポイントを経験値として取得していく流れです。したがってtasksコントローラーのdestroyアクションが実行されるときに獲得する流れにしたいです。
|
2
2
|
```SQL
|
3
3
|
SELECT sum(tasks.point)` FROM users
|
4
4
|
LEFT JOIN tasks ON users.id = tasks.user_id
|
1
より絞るため
title
CHANGED
File without changes
|
body
CHANGED
File without changes
|