当我尝试访问视图时,会返回错误:
#Task id的未定义方法'title':nil,created_at:nil,updated_at:nil
tasks_controller.rb(Controller)
class TasksController < ApplicationController
def new
@task = Task.new
end
def create
@task = Task.new(params[:task])
if @task.save
redirect_to new_task_path
end
end
end
/tasks/new.html.erb(View)
<%= form_for :task, url: tasks_path do |f| %>
<p>
<%= f.label :title %><br>
<%= f.text_field :title %>
</p>
<p>
<%= f.label :details %><br>
<%= f.text_area :details %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
task.rb(Model)
class Task < ActiveRecord::Base
belongs_to :user
attr_accessible :title, :details, :user_id, :volunteers
end
我该怎么办?
答案 0 :(得分:1)
看起来您有待处理的迁移(您的title
中有schema.rb
)。
其他说明:为@task
答案 1 :(得分:1)
您尚未在数据库中定义字段,请参阅:
#Task id: nil, created_at: nil, updated_at: nil
那里没有标题也没有细节,请执行此操作:
rails g migration add_title_and_details_to_tasks title details
检查您的迁移文件是否正确创建了这两个字段。
然后运行rake db:migrate
。下次记得使用以下字段生成资源:
rails g scaffold Task title details
这样,当你迁移你的字段时就会在那里。