【问题标题】:The action 'index' could not be found for Controller找不到控制器的操作“索引”
【发布时间】:2013-03-01 20:45:08
【问题描述】:

我正在尝试使用一个操作制作一个控制器,当我尝试转到 localhost:3000/controllername/action 时,我收到此错误:

无法为 LearnController 找到“显示”操作

这是我的控制器:

class LearnController < ApplicationController

    def more

    end
end

在路线中我这样做:

resources :learn

我知道资源会创建所有的节目、编辑、索引和所有这些,但我如何才能做到只有我创建的动作才会在路线中创建?

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    正如你提到的,resources :learn 将根据资源丰富的约定创建一堆路由。

    如果您不想要这些,请不要在您的 config/routes.rb 文件中使用 resources。相反,请使用getmatch 和朋友手动定义您的路线。例如

    get 'learn/more'
    

    【讨论】:

    • 谢谢!另一件事是,在学习了本教程一段时间后,它一直希望我使用脚手架,它使用起来非常简单快捷,但我想知道如何从头开始创建应用程序,而不必使用脚手架为我制作它们,有没有你推荐的学习这个的教程?
    • 两件事。首先,ROR 指南很棒:guides.rubyonrails.org。其次,脚手架在某种程度上是一个很好的教程。在正常开发中,使用生成器为新模型/控制器/资源设置样板文件是非常好的。脚手架只需多走一小步,就可以生成示例视图。我鼓励将脚手架用作学习工具,但当您准备好后,请改用其他生成器。
    猜你喜欢
    • 2011-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多