未初始化的常量Ruby on rails新控制器

时间:2016-01-14 04:13:22

标签: ruby-on-rails ruby

我的stand_controller.rb文件中的这一行:

@stand_items = Stand_Item.where("stand_id = " + (params[:id]).to_s)

导致错误:

uninitialized constant StandsController::Stand_Item

但是,我有一个名为:stand_items_controller.rb的文件,内容为:

class StandItemsController < ApplicationController  
end

我尝试了许多常量名称,例如StandItem,Standitem,Stand_item和所有这些名称的复数,但没有成功。

正确的常量名称是什么?是否存在rails存放的地方?

我在代码中的其他地方使用相同的概念: 我有这条线:

  @mark_count = Markstand.where("stand_id = " + (params[:id]).to_s)

直接在导致错误的行上方,并且没有错误。 Markstand是文件markstands_controller.rb的常量名称,其内容为:

class MarkstandsController < ApplicationController
end

编辑1 这就是我制作控制器的方式:

bin/rails generate controller stand_items

1 个答案:

答案 0 :(得分:1)

您已经生成了一个控制器,但您正在尝试使用该控制器内的模型。您需要为StandItem生成模型,然后使用控制器中的模型。

bin/rails generate model stand_item ...

请参阅文档,了解可以传递以设置模型的参数。