質問編集履歴

1

より詳細に説明するため、コードの追加と文章の編集を行いました。

2017/03/31 12:53

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- date_field につ
1
+ date_field がうまく保存されな
test CHANGED
@@ -1,17 +1,67 @@
1
- 以下のようなフォームを作成したとき、:start_date, :end_date保存後コンソールを確認すると、年データしか保存されていませんでした。
2
-
3
- どのようにすれば日付も保存できるでょうか?
1
+ 3/31 質問文を編集ました
4
2
 
5
3
 
6
4
 
5
+ ある投稿について、期間を年/月/日 ~ 年/月/日 のような形で設定、表示させるようにしたい。
6
+
7
7
  ```
8
8
 
9
- <%= f.label :start_date, "開始日:" %>
9
+ <%= form_for(@host) do |f| %>
10
10
 
11
- <%= f.date_field :start_date, class: "form-control" %>
11
+ <div class="form-inline">
12
12
 
13
- <%= f.label :end_date, "終了日:" %>
13
+ <%= f.label :start_date, "開始日:" %>
14
14
 
15
+ <%= f.date_field :start_date, class: "form-control" %>
16
+
17
+ <%= f.label :end_date, "終了日:" %>
18
+
15
- <%= f.date_field :end_date, class: "form-control" %>
19
+ <%= f.date_field :end_date, class: "form-control" %>
20
+
21
+ </div>
22
+
23
+ <div class="actions">
24
+
25
+ <%= f.submit "投稿", class: "btn btn-large btn-primary" %>
26
+
27
+ </div>
28
+
29
+ <% end %>
16
30
 
17
31
  ```
32
+
33
+ 上記フォーム作成後、対応するコントローラーに
34
+
35
+ ```
36
+
37
+ def host_params
38
+
39
+ params.require(:host).permit(:start_date, :end_date)
40
+
41
+ end
42
+
43
+ ```
44
+
45
+ と記入しました。
46
+
47
+
48
+
49
+ その後、フォームにて2017年02月14日~2018年10月15日のように入力。
50
+
51
+ rails console にて確認すると、
52
+
53
+ ```
54
+
55
+ start_date: 2017, end_date: 2018
56
+
57
+ ```
58
+
59
+ となっており、年データのみしか保存されていませんでした。
60
+
61
+
62
+
63
+ この場合、月日が保存されない原因として、何が考えられるでしょうか?
64
+
65
+
66
+
67
+ (書き直したのですが、説明下手なためわかりにくいかもしれません。ご不明な点があれば随時追加しますので、ぜひ回答願います。)