teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

試したことを追加

2020/11/16 09:18

投稿

makox0105
makox0105

スコア65

title CHANGED
File without changes
body CHANGED
@@ -1,95 +1,23 @@
1
1
  レコードを複製したいのですが、パラメータを引っ張ってきてくれません。
2
- param is missing or the value is emptyと出ます。
3
2
 
3
+ 試したこと
4
4
  ```RUBY
5
5
  def update_new
6
+ @retrieve_list = RetrieveList.new
6
- @retrieve_list = RetrieveList.new(retrieve_list_params)
7
+ @retrieve_list = RetrieveList.find(params[:id]).dup
8
+ @retrieve_list.save
7
9
  end
8
-
9
-
10
-
11
- private
12
- # Use callbacks to share common setup or constraints between actions.
13
- def set_retrieve_list
14
- @retrieve_list = RetrieveList.find(params[:id])
15
- end
16
-
17
- # Never trust parameters from the scary internet, only allow the white list through.
18
- def retrieve_list_params
19
- params.require(:retrieve_list).permit(:id, :re_customer, :re_name, :re_title_no, :re_title, ・・・
20
- end
21
10
  ```
22
-
23
- 登録画面
11
+ これを試しにSHOW画面に書いてみました。
24
12
  ```RUBY
25
- <%= form_for @retrieve_list, :html => { :class => 'form-horizontal' } do |f| %>
13
+ def show
26
- <% if @retrieve_list.errors.any? %>
14
+ @retrieve_list = RetrieveList.new
27
- <div id="error_explanation">
28
- <h2><%= pluralize(@retrieve_list.errors.count, "error") %> prohibited this retrieve_list from being saved:</h2>
29
-
30
- <ul>
31
- <% @retrieve_list.errors.full_messages.each do |message| %>
15
+ @retrieve_list = RetrieveList.find(params[:id]).dup
32
- <li><%= message %></li>
33
- <% end %>
16
+ @retrieve_list.save
34
- </ul>
35
- </div>
36
- <% end %>
17
+ end
37
-
38
- <div class="form-group">
39
- <div class="col-xs-2" align="right"><%= f.label :id, :class => 'control-label' %></div>
40
- <div class="col-xs-4"><%= f.text_field :id, :class => "form-control" %></div>
41
- </div>
42
-
43
- <div class="form-group">
44
- <div class="col-xs-2" align="right"><%= f.label :re_name, :class => 'control-label' %></div>
45
- <div class="col-xs-4"><%= f.text_field :re_name, :class => "form-control" %></div>
46
- </div>
47
- <div class="form-group">
48
- <div class="col-xs-2" align="right"><%= f.label :re_title, :class => 'control-label' %></div>
49
- <div class="col-xs-4"><%= f.text_field :re_title, :class => "form-control" %></div>
50
- </div>
51
-
52
-
53
-
54
-
55
- <%= f.submit nil, :class => 'btn btn-primary' %>
56
- <%= link_to t('.cancel', :default => t("helpers.links.cancel")),
57
- retrieve_lists_path, :class => 'btn btn-default' %>
58
- <% end %>
59
18
  ```
19
+ これだとLink_toでIDを引っ張ってきてくれました。
20
+ しかしshow画面に行くたびに複製され、えらいことになります。
21
+ 理想は前者でIDを引っ張ってきてくれれば成功しそうなのですが…。
60
22
 
61
- SHOW画面
62
- ```RUBY
63
- <%- model_class = RetrieveList -%>
64
- <div class="page-header">
65
- <h1><span class="glyphicon glyphicon-list-alt"> 詳細</span></h1>
66
- </div>
67
-
68
- <%= form_for @retrieve_list, :html => { :class => 'form-horizontal' } do |f| %>
69
-
70
- <div class="form-group">
71
- <div class="col-xs-2" align="right"><strong>ID</strong></div>
72
- <div class="col-xs-10"><strong>R<%= sprintf("%05d",@retrieve_list.id) %></strong></div>
73
- </div>
74
- <div class="form-group">
75
- <div class="col-xs-2" align="right"><strong>担当者名</strong></div>
76
- <div class="col-xs-10"><strong><%= @retrieve_list.re_name %></strong></div>
77
- </div>
78
- <div class="form-group">
79
- <div class="col-xs-2" align="right"><strong>作品名</strong></div>
80
- <div class="col-xs-10"><strong><%= @retrieve_list.re_title %></strong></div>
81
- </div>
82
-
83
- <%= link_to t('.back', :default => t("helpers.links.back")),
84
- retrieve_lists_path, :class => 'btn btn-default' %>
85
- <%= link_to t('.edit', :default => t("helpers.links.edit")),
86
- edit_retrieve_list_path(@retrieve_list), :class => 'btn btn-default' %>
87
- <%= link_to t('.destroy', :default => t("helpers.links.destroy")),
88
- retrieve_list_path(@retrieve_list),
23
+ これらのヒントで何かご教示できる方いましたら、宜しくお願いいたします。
89
- :method => 'delete',
90
- :data => { :confirm => t('.confirm', :default => t("helpers.links.confirm", :default => 'Are you sure?')) },
91
- :class => 'btn btn-danger' %>
92
- <%= link_to "複製",
93
- update_new_retrieve_lists_path(@retrieve_list), :class => 'btn btn-default' %>
94
- <% end %>
95
- ```

1

フォーム追記

2020/11/16 09:17

投稿

makox0105
makox0105

スコア65

title CHANGED
File without changes
body CHANGED
@@ -18,4 +18,78 @@
18
18
  def retrieve_list_params
19
19
  params.require(:retrieve_list).permit(:id, :re_customer, :re_name, :re_title_no, :re_title, ・・・
20
20
  end
21
+ ```
22
+
23
+ 登録画面
24
+ ```RUBY
25
+ <%= form_for @retrieve_list, :html => { :class => 'form-horizontal' } do |f| %>
26
+ <% if @retrieve_list.errors.any? %>
27
+ <div id="error_explanation">
28
+ <h2><%= pluralize(@retrieve_list.errors.count, "error") %> prohibited this retrieve_list from being saved:</h2>
29
+
30
+ <ul>
31
+ <% @retrieve_list.errors.full_messages.each do |message| %>
32
+ <li><%= message %></li>
33
+ <% end %>
34
+ </ul>
35
+ </div>
36
+ <% end %>
37
+
38
+ <div class="form-group">
39
+ <div class="col-xs-2" align="right"><%= f.label :id, :class => 'control-label' %></div>
40
+ <div class="col-xs-4"><%= f.text_field :id, :class => "form-control" %></div>
41
+ </div>
42
+
43
+ <div class="form-group">
44
+ <div class="col-xs-2" align="right"><%= f.label :re_name, :class => 'control-label' %></div>
45
+ <div class="col-xs-4"><%= f.text_field :re_name, :class => "form-control" %></div>
46
+ </div>
47
+ <div class="form-group">
48
+ <div class="col-xs-2" align="right"><%= f.label :re_title, :class => 'control-label' %></div>
49
+ <div class="col-xs-4"><%= f.text_field :re_title, :class => "form-control" %></div>
50
+ </div>
51
+
52
+
53
+
54
+
55
+ <%= f.submit nil, :class => 'btn btn-primary' %>
56
+ <%= link_to t('.cancel', :default => t("helpers.links.cancel")),
57
+ retrieve_lists_path, :class => 'btn btn-default' %>
58
+ <% end %>
59
+ ```
60
+
61
+ SHOW画面
62
+ ```RUBY
63
+ <%- model_class = RetrieveList -%>
64
+ <div class="page-header">
65
+ <h1><span class="glyphicon glyphicon-list-alt"> 詳細</span></h1>
66
+ </div>
67
+
68
+ <%= form_for @retrieve_list, :html => { :class => 'form-horizontal' } do |f| %>
69
+
70
+ <div class="form-group">
71
+ <div class="col-xs-2" align="right"><strong>ID</strong></div>
72
+ <div class="col-xs-10"><strong>R<%= sprintf("%05d",@retrieve_list.id) %></strong></div>
73
+ </div>
74
+ <div class="form-group">
75
+ <div class="col-xs-2" align="right"><strong>担当者名</strong></div>
76
+ <div class="col-xs-10"><strong><%= @retrieve_list.re_name %></strong></div>
77
+ </div>
78
+ <div class="form-group">
79
+ <div class="col-xs-2" align="right"><strong>作品名</strong></div>
80
+ <div class="col-xs-10"><strong><%= @retrieve_list.re_title %></strong></div>
81
+ </div>
82
+
83
+ <%= link_to t('.back', :default => t("helpers.links.back")),
84
+ retrieve_lists_path, :class => 'btn btn-default' %>
85
+ <%= link_to t('.edit', :default => t("helpers.links.edit")),
86
+ edit_retrieve_list_path(@retrieve_list), :class => 'btn btn-default' %>
87
+ <%= link_to t('.destroy', :default => t("helpers.links.destroy")),
88
+ retrieve_list_path(@retrieve_list),
89
+ :method => 'delete',
90
+ :data => { :confirm => t('.confirm', :default => t("helpers.links.confirm", :default => 'Are you sure?')) },
91
+ :class => 'btn btn-danger' %>
92
+ <%= link_to "複製",
93
+ update_new_retrieve_lists_path(@retrieve_list), :class => 'btn btn-default' %>
94
+ <% end %>
21
95
  ```