Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 未定义的方法`产品';对于nil:ProductsController#create中的NilClass nomethoder错误_Ruby On Rails_Ruby_Sqlite_Rails Routing - Fatal编程技术网

Ruby on rails 未定义的方法`产品';对于nil:ProductsController#create中的NilClass nomethoder错误

Ruby on rails 未定义的方法`产品';对于nil:ProductsController#create中的NilClass nomethoder错误,ruby-on-rails,ruby,sqlite,rails-routing,Ruby On Rails,Ruby,Sqlite,Rails Routing,我无法理解并解决此错误。请帮助我。 下面是我的错误 ProductsController中的NoMethodError#为nil:NilClass创建未定义的方法“products”(来自ProductsController的“@product= @user.products.build(产品参数)“) 而且,产品模型。。。。 ①名称②大小③友善的④描述⑤价格(当然有id,但没有产品id) 而用户模型已经。。。。。。 ①名称②电子邮件③用户名④密码⑤密码确认⑥从…起⑦什么时候⑧状态在“操作:查找

我无法理解并解决此错误。请帮助我。 下面是我的错误

ProductsController中的NoMethodError#为nil:NilClass创建未定义的方法“products”(来自ProductsController的“@product= @user.products.build(产品参数)“)

而且,产品模型。。。。 ①名称②大小③友善的④描述⑤价格(当然有id,但没有产品id)

而用户模型已经。。。。。。
①名称②电子邮件③用户名④密码⑤密码确认⑥从…起⑦什么时候⑧状态

在“操作:查找用户”对象之前有
,除了:[:创建]
。这意味着在所有操作中都设置了
@user
,除了
create
。但是您确实需要在
create
操作中设置
@user
。因此,您可能应该删除
,除了:[:create]
,然后离开:

before_action :find_user_object

在“操作:查找用户”对象之前有
,除了:[:创建]
。这意味着在所有操作中都设置了
@user
,除了
create
。但是您确实需要在
create
操作中设置
@user
。因此,您可能应该删除
,除了:[:create]
,然后离开:

before_action :find_user_object

ProductsController
中,您有

before_action :find_user_object,except:[:create]

因此,由于异常,在
创建
操作中没有设置
@user

产品控制器中

before_action :find_user_object,except:[:create]

因此,由于异常,在
create
操作中没有设置
@user

show
方法中,您构建
然后
find
查看
show
方法下面的内容,应该是这样的

请检查
products
表中是否存在
user\u id

class ProductsController < ApplicationController

  before_action :find_user_object

  def show
    @product = @user.products.find(params[:id])
  end

end
class ProductsController
show
方法中,您可以
构建
,然后
查找
show
方法下面查看,应该是这样的

请检查
products
表中是否存在
user\u id

class ProductsController < ApplicationController

  before_action :find_user_object

  def show
    @product = @user.products.find(params[:id])
  end

end
class ProductsController
ActiveRecord::产品控制器中的UnknownAttributeError#创建未知属性:user\u i您可能没有将
user\u id
列添加到
products
表中。您能否在
产品
条目中查看
db/schema.rb
?如果它缺少必须通过迁移添加的
user\u id
列:
rails g migration AddUserIdToProducts user\u id:references
,您能否解释一下用户id:references它应该是
user:references
,它是在数据库模式中添加
user
关联的缩写。它添加了
user\u id
integer列并在其上设置索引。@user3674902请单击复选标记,将您最喜欢的回复标记为“已接受”好吗?ActiveRecord::产品控制器中的UnknownAttributeError#创建未知属性:user\y您可能没有将
user\u id
列添加到
products
表中。您能否在
产品
条目中查看
db/schema.rb
?如果它缺少必须通过迁移添加的
user\u id
列:
rails g migration AddUserIdToProducts user\u id:references
,您能否解释一下用户id:references它应该是
user:references
,它是在数据库模式中添加
user
关联的缩写。它添加了
user\u id
integer列,并在其上设置了索引。@user3674902您能通过单击复选标记将您最喜欢的回复标记为“已接受”吗?我犯了那个错误,但仍然是gat错误。ActiveRecord::UnknownAttributeError在ProductsController中#创建未知属性:user\u id你能解决这个问题吗?我犯了那个错误,但仍然是gat错误。ActiveRecord::产品控制器中的UnknownAttributeError#创建未知属性:用户id你能解决这个问题吗?