【问题标题】:How to display an action when specifying controller url指定控制器 url 时如何显示操作
【发布时间】:2017-03-08 03:18:48
【问题描述】:

我想知道在指定控制器 url 时如何显示操作。例如;假设我有 DemoController.rb 和 views/demo/index.html.erb 文件。我还在 routes.rb 中指定了路线 获取“演示/索引”

如何设置项目,以便当我键入“localhost:3000/demo”时,它呈现与“localhost:3000/demo/index”相同的布局?

目前,当我输入“localhost:3000/demo”时,我收到“无路由匹配”错误。

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    您需要一个 get 'demo' => 'demo#index' 来代替该 URL 才能工作。

    也就是说,您可能想要使用 Rails 约定,并且可能需要将控制器复数并改用 RESTful 路由:

    resources :demos, only: :index

    【讨论】:

    • 完美,谢谢。我刚开始学习Rails,你介意简单解释一下你添加的两个代码sn-ps之间的区别吗?
    • Routes 是一个独立的主题,第二个是 RESTFul,另一个不是,最终都定义了相同的路由。有关更多信息,请参阅路由指南:guides.rubyonrails.org/routing.html
    猜你喜欢
    • 2020-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-12
    • 2017-03-01
    相关资源
    最近更新 更多