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

回答編集履歴

6

編集忘れの修正

2019/04/10 10:31

投稿

ruby_math
ruby_math

スコア90

answer CHANGED
@@ -24,7 +24,7 @@
24
24
  private
25
25
 
26
26
  def teacher_params
27
- params[:project].permit(:school, :school, :department)
27
+ params[:teacher].permit(:school, :school, :department)
28
28
  end
29
29
  ```
30
30
  つぎに、ルーティングが少しおかしいと感じました。

5

編集し忘れの修正

2019/04/10 10:31

投稿

ruby_math
ruby_math

スコア90

answer CHANGED
@@ -23,8 +23,8 @@
23
23
  # for security from here
24
24
  private
25
25
 
26
- def project_params
26
+ def teacher_params
27
- params[:project].permit(:title)
27
+ params[:project].permit(:school, :school, :department)
28
28
  end
29
29
  ```
30
30
  つぎに、ルーティングが少しおかしいと感じました。
@@ -49,7 +49,7 @@
49
49
  <p>学校名</p>
50
50
  <%= p.text_field :school %>
51
51
  <p>学年</p>
52
- <%= p.text_field :grade %>
52
+ <%= p.text_field :school %>
53
53
  <p>学部</p>
54
54
  <%= p.text_field :department %>
55
55
  <%= p.submit %>

4

誤字の修正

2019/04/10 10:27

投稿

ruby_math
ruby_math

スコア90

answer CHANGED
@@ -43,7 +43,7 @@
43
43
  もしかして生徒テーブル、生徒コントローラーなどがあるのでしょうか?
44
44
 
45
45
  もしあるんだとしたら、urlは下記のように取り除きましょう。
46
- teacherのnewないことを祈ります。
46
+ teacherのnewではないことを祈ります。
47
47
  ```erb
48
48
  <%= form_for @profile do |p| %>
49
49
  <p>学校名</p>

3

誤字の修正

2019/04/10 10:25

投稿

ruby_math
ruby_math

スコア90

answer CHANGED
@@ -17,7 +17,7 @@
17
17
  def create
18
18
  @teacher = Teacher.new(teacher_params)
19
19
  @teacher.save
20
- redirect_to teachers_path #リダイレクト先はご自由設定しましょう。
20
+ redirect_to teachers_path #リダイレクト先はご自由設定しましょう。
21
21
  end
22
22
 
23
23
  # for security from here

2

回答の修正

2019/04/10 10:24

投稿

ruby_math
ruby_math

スコア90

answer CHANGED
@@ -6,4 +6,54 @@
6
6
  値を渡したいパスはどこでしょうか?
7
7
  rails routesの結果を公開されていはいかがでしょうか?
8
8
 
9
- 追記:コントローラーも必要ですね。お願い致します。
9
+ 追記:コントローラーも必要ですね。お願い致します。
10
+
11
+ ==========以下追記==========
12
+
13
+ まず1つ目、コントローラーに
14
+ create actionの設定がありません。
15
+
16
+ ```ruby
17
+ def create
18
+ @teacher = Teacher.new(teacher_params)
19
+ @teacher.save
20
+ redirect_to teachers_path #リダイレクト先はご自由の設定しましょう。
21
+ end
22
+
23
+ # for security from here
24
+ private
25
+
26
+ def project_params
27
+ params[:project].permit(:title)
28
+ end
29
+ ```
30
+ つぎに、ルーティングが少しおかしいと感じました。
31
+ よくわからないのであれば「resources」を利用しましょう。
32
+ ```ruby
33
+ Rails.application.routes.draw do
34
+ resources :teachers
35
+ end
36
+ ```
37
+ そして最後の部分 viewですね。
38
+ resourcesを利用し、routesに単数のteacherにcreateアクションが追加してあれば
39
+ 基本的にurlの指定は必要ありません。
40
+ 一つすごく気になることがあります。
41
+ @profileはどこで定義しているのでしょうか?
42
+
43
+ もしかして生徒テーブル、生徒コントローラーなどがあるのでしょうか?
44
+
45
+ もしあるんだとしたら、urlは下記のように取り除きましょう。
46
+ teacherのnew出ないことを祈ります。
47
+ ```erb
48
+ <%= form_for @profile do |p| %>
49
+ <p>学校名</p>
50
+ <%= p.text_field :school %>
51
+ <p>学年</p>
52
+ <%= p.text_field :grade %>
53
+ <p>学部</p>
54
+ <%= p.text_field :department %>
55
+ <%= p.submit %>
56
+ <% end %>
57
+ ```
58
+
59
+ わからないことがありましたら、コメントにて遠慮なくどうぞ!

1

追記

2019/04/10 10:23

投稿

ruby_math
ruby_math

スコア90

answer CHANGED
@@ -4,4 +4,6 @@
4
4
  とErrorが出ていますね。
5
5
 
6
6
  値を渡したいパスはどこでしょうか?
7
- rails routesの結果を公開されていはいかがでしょうか?
7
+ rails routesの結果を公開されていはいかがでしょうか?
8
+
9
+ 追記:コントローラーも必要ですね。お願い致します。