为什么我得到一个无路由匹配[GET]“/产品”的时候,路由存在?(Why do I get a No

2019-10-16 19:39发布

我是新来的Ruby和Ruby on Rails,在最大OSX狮子使用Ruby 1.9.2和Rails 3.2.5我,和我通过书“敏捷Web开发使用Rails(第四版)”工作我的方式。

我已经使用在第6章概述如下命令创建自己的样品储存罐的应用:

  1. 轨新车厂
  2. 轨道产生支架产品名称:字符串描述:文本图片网址:串价格:十进制
  3. 耙分贝:迁移
  4. 轨道服务器

当我点Safari浏览器的“http://本地主机:3000 /产品”我碰到下面的动作控制器:不是看到产品列表页面的异常捕获错误信息:

Routing Error
No route matches [GET] "/products"
Try running rake routes for more information on available routes.

运行在终端“耙路线”给我:

    products GET    /products(.:format)          products#index
             POST   /products(.:format)          products#create
 new_product GET    /products/new(.:format)      products#new
edit_product GET    /products/:id/edit(.:format) products#edit
     product GET    /products/:id(.:format)      products#show
             PUT    /products/:id(.:format)      products#update
             DELETE /products/:id(.:format)      products#destroy

以下系自动添加到routes.rb中。

resources: product

也有在products_controller.rb索引方法。

class ProductsController < ApplicationController
  # GET /products
  # GET /products.json
  def index
    @products = Product.all

    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @products }
    end
  end

翻遍了本书的的勘误和论坛不转了任何可能的解决方案。

提前致谢。

Answer 1:

想通了 - 我在另一个终端窗口中运行WEBrick服务器的另一个实例,但它是从前面的章节演示应用。

学过的知识。 确保你从你要测试的Rails应用程序的目录中运行本地服务器。



文章来源: Why do I get a No Route Matches [GET] “/products” when the route exists?