最好的发送路由错误

时间:2016-04-20 07:31:29

标签: ruby-on-rails-4

我有一个如下的用户控制器。我想使用best_in_place gem在配置文件页面中编辑名称和生物。我跟随Ryan Bates的轨道广播,但它无法正常工作。当我试图通过chrome检查器看到错误时,我发现最好的是请求网址http://localhost:3001/user/3,现在抛出404找不到错误。

users_controller.rb

class UsersController < ApplicationController
before_action :authenticate_user!, only: [:profile]
respond_to :json, :html
def profile
  @user = current_user
end

def show
  @user = User.find(params[:id])
end

def update
  if current_user.update(user_params)
    respond_with current_user
  end
end

def edit
  @user = current_user
end

private
  def user_params
      params.require(:user).permit(:name, :bio)
  end
end

的routes.rb

Rails.application.routes.draw do
  resources :user
end

1 个答案:

答案 0 :(得分:2)

routes.rb中,您将路由配置为resources :user,其中包含以下路由:

enter image description here

但我们可以看到您的控制器为UsersController,因此您必须将路线配置为:resources :users其中包含以下路线:

enter image description here

希望这可以解决您的问题。