1

安装 Mecury Editor 后,当我尝试启动服务器时,我得到以下信息:

in `normalize_conditions!': You should not use the `match` method in your router without specifying an HTTP method. (RuntimeError)
If you want to expose your action to both GET and POST, add `via: [:get, :post]` option.
If you want to expose your action to GET, use `get` in the router:
  Instead of: match "controller#action"
  Do: get "controller#action"

这是路由文件

Bootcanvise::Application.routes.draw do

Mercury::Engine.routes



  resources :newsletters

  resources :advertisers

  devise_for :users
  get "home/index"
  # The priority is based upon order of creation: first created -> highest priority.
  # See how all your routes lay out with "rake routes".

  # You can have the root of your site routed with "root"
  root 'home#index'
end

我试过编辑路线文件,但我一直收到同样的错误

我预计这与对 routes.rb 文件缺乏了解有关。

4

2 回答 2

5

今天我也遇到了这个问题。您似乎安装了过时版本的水银导轨。更新到 master 将解决此问题,因此在您的 Gemfile 中更改为:

gem 'mercury-rails', :git => 'git://github.com/jejacks0n/mercury.git'

我也不得不清空我的 rvm gemset。运行后

rvm gemset empty gemset_name && bundle install

我有一个最新版本的水星及其依赖项,这个错误消失了......

请务必安装版本 0.9.0,因为这是当前的主...

PS:如果您打算运行图像迁移,则必须在此处应用此补丁:

#443 上的 Mercury 拉取请求

于 2014-02-08T18:40:43.757 回答
0

您的 Mercury gem 创建的路由导致了问题。

您需要修改 Mercury 创建的路线(当前的 gem ......在我写这篇文章的时候)将为您执行此操作:

routes.rb更改此行:

Mercury::Engine.routes

对此:

mount Mercury::Engine => '/'

在那之后你应该好好去!

于 2015-04-08T05:01:17.470 回答