質問編集履歴

1

エラー内容、コードの記述について追加しました

2020/03/08 14:14

投稿

akanenne
akanenne

スコア6

test CHANGED
@@ -1 +1 @@
1
- form_forメゾットを使いたい
1
+ form_forメゾットを使いたい
test CHANGED
@@ -1,3 +1,139 @@
1
1
  form_forをうまく使いたいのですがエラーが出てしまいます。
2
2
 
3
3
  初心者で申し訳ないのですが、ご教授いただければ幸いです。
4
+
5
+
6
+
7
+ ```Ruby
8
+
9
+
10
+
11
+ <main class="contents">
12
+
13
+
14
+
15
+ <p class="midashi2">Ornament Plantsの投稿</p>
16
+
17
+ <br>
18
+
19
+ <%= form_for [@ops] do |f| %>
20
+
21
+ <%= f.text_area :title %>
22
+
23
+ <%= f.text_area :detail %>
24
+
25
+ <%= f.file_field :images %>
26
+
27
+ <%= f.submit 'アップロードする'%>
28
+
29
+ <% end %>
30
+
31
+
32
+
33
+ ```
34
+
35
+ <%= form_for [@ops] do |f| %> のところで、
36
+
37
+
38
+
39
+ NoMethodError in Portfolio#new
40
+
41
+ Showing /home/ec2-user/environment/portfolio/app/views/portfolio/new.html.erb where line #5 raised:
42
+
43
+
44
+
45
+ undefined method `ops_path' for #<#<Class:0x00007f63f1d4c8d8>:0x00007f63f1d41550>
46
+
47
+
48
+
49
+ というエラーが出ます。
50
+
51
+
52
+
53
+ モデル:op テーブル:ops へのデータを取り込めるフォームを作成したいです。
54
+
55
+
56
+
57
+ コントローラー
58
+
59
+ ```Rails
60
+
61
+ class PortfolioController < ApplicationController
62
+
63
+
64
+
65
+ def index
66
+
67
+ @ops = Op.all
68
+
69
+ @kumas = Kuma.all
70
+
71
+ @nobodies = Nobody.all
72
+
73
+ @anothers = Another.all
74
+
75
+ end
76
+
77
+
78
+
79
+ def new
80
+
81
+ @ops = Op.new
82
+
83
+ end
84
+
85
+
86
+
87
+ def create
88
+
89
+ end
90
+
91
+
92
+
93
+ def show
94
+
95
+ end
96
+
97
+
98
+
99
+ def update
100
+
101
+ end
102
+
103
+
104
+
105
+ def edit
106
+
107
+ end
108
+
109
+
110
+
111
+ end
112
+
113
+
114
+
115
+ ```
116
+
117
+
118
+
119
+ ルーティング
120
+
121
+ ```Rails
122
+
123
+ Rails.application.routes.draw do
124
+
125
+ # root to: 'portfolio#index'
126
+
127
+ # resources :portfolio
128
+
129
+
130
+
131
+ get 'portfolio' => 'portfolio#index'
132
+
133
+ get 'portfolio/new' => 'portfolio#new'
134
+
135
+ end
136
+
137
+
138
+
139
+ ```