回答編集履歴

7

2017/05/08 10:49

投稿

moke
moke

スコア2241

test CHANGED
@@ -18,21 +18,15 @@
18
18
 
19
19
  ```ruby
20
20
 
21
- after_initialize :set_not_selected
21
+
22
22
 
23
23
  before_save :set_default 
24
24
 
25
- private
25
+ private
26
-
27
- def set_not_selected
28
-
29
- self.section_id ||= 0#未選択のid
30
-
31
- end
32
26
 
33
27
  def set_default
34
28
 
35
- self.section_id = -1 if self.section_id==0
29
+ self.section_id = -1 if self.section_id==nil
36
30
 
37
31
  end
38
32
 

6

2017/05/08 10:48

投稿

moke
moke

スコア2241

test CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  ```ruby
20
20
 
21
- after_initialize :set_default
21
+ after_initialize :set_not_selected
22
22
 
23
23
  before_save :set_default 
24
24
 

5

2017/05/08 10:18

投稿

moke
moke

スコア2241

test CHANGED
@@ -32,7 +32,7 @@
32
32
 
33
33
  def set_default
34
34
 
35
- self.section_id ||= -1
35
+ self.section_id = -1 if self.section_id==0
36
36
 
37
37
  end
38
38
 

4

2017/05/08 10:16

投稿

moke
moke

スコア2241

test CHANGED
@@ -18,9 +18,9 @@
18
18
 
19
19
  ```ruby
20
20
 
21
- after_initialize :set_default, if: :new_record?
21
+ after_initialize :set_default
22
22
 
23
- before_save :set_default, if: :new_record? 
23
+ before_save :set_default 
24
24
 
25
25
  private
26
26
 

3

2017/05/08 10:15

投稿

moke
moke

スコア2241

test CHANGED
@@ -18,11 +18,17 @@
18
18
 
19
19
  ```ruby
20
20
 
21
- after_initialize :set_default, if: :new_record?
21
+ after_initialize :set_default, if: :new_record?
22
22
 
23
-
23
+ before_save :set_default, if: :new_record? 
24
24
 
25
25
  private
26
+
27
+ def set_not_selected
28
+
29
+ self.section_id ||= 0#未選択のid
30
+
31
+ end
26
32
 
27
33
  def set_default
28
34
 

2

2017/05/08 10:14

投稿

moke
moke

スコア2241

test CHANGED
@@ -56,8 +56,10 @@
56
56
 
57
57
  みたいにしていると思ったのですが。
58
58
 
59
+ 違ったみたいですね。
59
60
 
60
61
 
62
+
61
- あと、DBにdefault_valueを設定するというもありますね。
63
+ あと、DBにdefault_valueを設定するというもありますね。
62
64
 
63
65
 

1

2017/05/08 09:21

投稿

moke
moke

スコア2241

test CHANGED
@@ -1,4 +1,14 @@
1
- これは、こう書くしかありません、しかし
1
+ これは、こう書くしかありません
2
+
3
+ あえて書くなら
4
+
5
+ ```ruby
6
+
7
+ params[:coordinator][:section_id]=-1 if params[:coordinator][:section_id].blank?
8
+
9
+ ```
10
+
11
+ こうでしょうか、しかし
2
12
 
3
13
 
4
14
 
@@ -26,4 +36,28 @@
26
36
 
27
37
  特に指定がなければ、-1が代入されるというように
28
38
 
29
- **モデル層**に記述すれば、sskさんの悩みは全て解決されると思います。
39
+ **モデル層**に記述すれば、sskさんの悩みは全て解決されると思います。
40
+
41
+
42
+
43
+ てっきりcontroller層に書いたというから
44
+
45
+ ```ruby
46
+
47
+ def new
48
+
49
+ Coordinator.new(section_id: -1)
50
+
51
+ end
52
+
53
+
54
+
55
+ ```
56
+
57
+ みたいにしていると思ったのですが。
58
+
59
+
60
+
61
+ あと、DBにdefault_valueを設定するというてもありますね。
62
+
63
+