目的・現状
Postmanにパラメータを渡してJSON形式データのやりとりを実験したいです。
users_controller.rbにcreateアクションを次のように定義しました。
ruby
1class UsersController < ApplicationController 2 3 def create 4 @user = User.new(user_params) 5 if @user.save 6 render json: { status: 'success', data: @user } 7 else 8 render json: { status: 'error', data: @user.errors } 9 end 10 11 private 12 13 def user_params 14 params.require(:user).permit(:user_name,:email,:password,:password_confirmation) 15 end 16 end
routes.rbのアクションに対するルーティングはこんな感じです。
ruby
1 Rails.application.routes.draw do 2 3 post '/create', to: 'users#create' 4 5end
また、下のようなJSONのパラメータを用意しました。
JSON
1{ 2 "user_name":"abc", 3 "email":"abc@exsample.com", 4 "password":"rhcp", 5 "password_confirmation":"rhcp" 6}
そしてrails sコマンドでサーバを建てた後 http://localhost:3000/users/createに対してPOST命令をsendしました
発生している問題・エラーメッセージ
サーバ自体は立ち上がったと思うのですがPostman上に次のようなエラーメッセージが出ました。
{ "status": 500, "error": "Internal Server Error", "exception": "#<PG::ConnectionBad: could not connect to server: Connection refused\n\tIs the server running on host \"0.0.0.0\" and accepting\n\tTCP/IP connections on port 5432?\n>", "traces": { "Application Trace": [], "Framework Trace": [ { "id": 0, "trace": "pg (1.1.4) lib/pg.rb:56:in `initialize'" }, { "id": 1, "trace": "pg (1.1.4) lib/pg.rb:56:in `new'" }, { "id": 2, "trace": "pg (1.1.4) lib/pg.rb:56:in `connect'" ・ ・ ・
このエラーからサーバ関係やポート番号が関係しているのだと思い、調べてみましたがわかりませんでした。
解決方法をご存知のかた、お力を貸してもらえませんか?
回答1件
あなたの回答
tips
プレビュー