nil的未定义方法:NilClass

问题描述 投票:0回答:1

上传控制器

def create
@upload = @order.uploads.build(params[:uploadtwo]) 
   respond_to do |format|
    if @upload.save
    format.html { redirect_to root_path, :notice => 'File was successfully uploaded.' }
    format.json { render :json => @upload, :status => :created, :location => @upload }
  else
    format.html { render :action => "new" }
    format.json { render :json => @upload.errors, :status => :unprocessable_entity }     
end

结束

上传模型

belongs_to :order

订单模型

has_many :uploads

我收到错误[UploadtwosController #create中的NoMethodError],[nil的未定义方法`uploads':NilClass]

有谁知道我在做什么?

ruby-on-rails-3 undefined has-many belongs-to
1个回答
0
投票

在您的上传模型中声明belongs_to :order并不意味着@order将自动在控制器中定义。也许你想要的是控制器中的before_filter,它将设置@order

© www.soinside.com 2019 - 2024. All rights reserved.