我是新手想要在铁轨上学习红宝石 我从youtube上的教程中学习了这段代码。
我坚持找到未定义的方法`描述'。
这里是我的代码jobs_controller.rb
类JobsController< ApplicationController的 before_action:find_job,only:[:show,:edit,:update,:destroy]
def index
@jobs = Job.all.order("created_at DESC")
end
def show
end
def new
@job = Job.new
end
def create
@job = Job.new(jobs_params)
if @job.save
redirect_to @job
else
render "New"
end
end
def edit
end
def update
end
def destroy #to delete
end
private
def jobs_params
params.require(:job).permit(:title, :description, :company, :url)
end
def find_job
@job = Job.find(params[:id])
end
端
答案 0 :(得分:0)
描述不是作业模型/表的属性,您仍然在form_for中使用它,这就是为什么它给出了未定义的方法描述。
答案 1 :(得分:0)
您还没有对您的工作模式进行描述。在控制台中运行此命令:
rails g migration add_description_to_jobs description
' add_description_to_jobs'创建迁移文件本身,' description'将创建一个字符串字段' description'。如果你说'描述:整数'它会将其创建为整数,但在这种情况下你不会需要它。
答案 2 :(得分:0)
我可以看到你在@job中使用简单的simple_form_for,并在你的代码中使用
f.input :description, label: "Job Description"
所以这个错误意味着你的@job对象没有"描述"您使用f.input的属性,请检查。