First argument in form cannot contain nil or be empty
のエラーを直すことが出来ません
コントローラで
@todo = Todo.new
とすれば大丈夫だと思ったのですが、、、
どなたか教えていただきたいです
宜しくお願いします
new.html.erb
1<h1>New Todo</h1> 2 3<% form_for(@todo) do |f| %> 4 5<div class="field"> 6 <%= f.label :title %> 7 <%= f.text_field :title %> 8 9 <%= f.label :description %> 10 <%= f.text_field :description %> 11 12 <%= f.submit %> 13</div> 14<% end %> 15 16<%= link_to 'Back', todo_index_path %> 17
index.html.erb
1<h1>Todo List</h1> 2<p>Welcome to Todo List.</p> 3 4<table> 5 <thead> 6 <tr> 7 <th>タスク名</th> 8 <th>説明</th> 9 </tr> 10 </thead> 11 12 <tbody> 13 <% @todos.each do |todo| %> 14 <tr> 15 <td><%= todo.title %></td> 16 <td><%= todo.description %></td> 17 </tr> 18 <% end %> 19 </tbody> 20 21</table> 22<%= link_to "New", new_todo_path %> 23
todo_controller.rb
1class TodoController < ApplicationController 2 def index 3 @todos = Todo.all 4 end 5 6 def new 7 @todo = Todo.new 8 end 9 10 def create 11 @todo = Todo.new(todo_params) 12 13 if @todo.save 14 redirect_to todo_index_path 15 else 16 render 'new' 17 end 18 end 19 20private 21 def todo_params 22 params.require(:todo).permit(:title, :description) 23 end 24 25end 26
routes.rb
1Rails.application.routes.draw do 2 resources :todo 3end
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/19 03:03