【Rails+Vue】Rails⇔Vue間のデータの送受信
Vue→Rails
以下のようなストロングパラメータが設定されているとき、params[:user][:name]
などといった二重ハッシュである必要がある。
def user_params params.require(:user).permit(:name, :email) end
このとき、axiosの引数は以下のような構造にすればOK。
axios.post('/api/users', { user: { name: 'foobar', email: '...' } })
Rails→Vue
Railsからはrender jsonでJSONオブジェクトを渡す。
def create if user.create render json: user else render json: user.errors, status: :bad_request end end # headで特定のstatusを返す def authenticate! return if current_user head :unauthorized end