回答編集履歴
1
言葉の補足とコードの言語の指定
answer
CHANGED
@@ -2,13 +2,13 @@
|
|
2
2
|
`form_tag('posts_path')`のように文字列を引数に渡してしまうと、
|
3
3
|
`posts_path`というURLにフォームの値を送信してしまいます。
|
4
4
|
今回の場合、`/posts`というURLに送信したいので、以下のように設定する必要があります。
|
5
|
-
```
|
5
|
+
```Ruby
|
6
6
|
form_tag posts_path
|
7
7
|
```
|
8
|
-
引数の括弧はあってもなくても、どちらでも問題ありません。
|
8
|
+
メソッドの引数の括弧はあってもなくても、どちらでも問題ありません。
|
9
9
|
ちなみに上のコードは以下のように設定した場合と同じです。
|
10
10
|
|
11
|
-
```
|
11
|
+
```Ruby
|
12
12
|
form_tag '/post'
|
13
13
|
```
|
14
14
|
`posts_path`というのはRailsのパス用のヘルパーメソッドで、
|
@@ -31,7 +31,7 @@
|
|
31
31
|
<h1>テキスト入力</h1>
|
32
32
|
|
33
33
|
<%= form_tag posts_path do |f| %>
|
34
|
-
<%= text_field_tag :name %><br
|
34
|
+
<%= text_field_tag :name %><br>
|
35
35
|
<%= text_field_tag :content %><br>
|
36
36
|
<%= submit_tag "追加" %>
|
37
37
|
<% end %>
|
@@ -43,12 +43,12 @@
|
|
43
43
|
もしドット記法をRailsで使う場合は、`Hash.new`ではなく、
|
44
44
|
`ActiveSupport::OrderedOptions`を使用します。
|
45
45
|
※参考:[ActiveSupport::OrderedOptions](http://api.rubyonrails.org/v5.1/classes/ActiveSupport/OrderedOptions.html)
|
46
|
-
```
|
46
|
+
```Ruby
|
47
47
|
@setting = ActiveSupport::OrderedOptions.new
|
48
48
|
```
|
49
49
|
また、ヘルパーメソッドを使用して以下のように引数にパラメータを設定することによって、
|
50
50
|
リダイレクト先にパラメータを渡すことができます。
|
51
|
-
```
|
51
|
+
```Ruby
|
52
52
|
redirect_to posts_result_url(name: @setting.name, content: @setting.content)
|
53
53
|
```
|
54
54
|
この`posts_result_url`の部分はURL用のヘルパーメソッドです。
|