我在API模式下使用Rails 5開始了一個新項目。Rails 5 api - undefined方法`user_url'
目前我只是創建項目,設置數據庫並使用scaffold命令。
rails g scaffold User
我盡我的代碼與郵遞員來創建一個新用戶(POST)
請求
URI localhost:3000/v1/users
{
"first_name": "Firstname",
"last_name": "Lastname",
"email": "[email protected]"
}
結果
#<NoMethodError: undefined method `user_url' for #<Api::V1::UsersController:0x005594d8a4ad90>
我怎麼能解決這個錯誤?
的routes.rb
Rails.application.routes.draw do
scope module: 'api' do
namespace :v1 do
resources :users, :as => 'user'
end
end
end
users_controller.rb
# POST /users
def create
@user = User.new(user_params)
if @user.save
render json: @user, status: :created, location: @user
else
render json: @user.errors, status: :unprocessable_entity
end
end
檢查您的路線與斌/鐵路路線..我認爲你需要寫v1_user_url – siegy22
我認爲「位置:」調用一個不好的網址。我對嗎 ? – Sancho
正確。刪除。 – mrlindsey