ruby-on-rails - 来自 rails API 的 json 请求返回错误代码
问题描述
我正在尝试让 rails 渲染一些 json。当我访问 mysite.com/v1/discussions.json 时,我希望看到数据库中所有讨论的打印件。但是,当我去那里时,我收到错误“{“status”:“error”,“code”:404,“message”:“Not found”}”。我不知道为什么我没有得到我期望的 json 响应。
我正在使用rails 5。
/controllers/api/v1/discussions_controller.rb
module Api
module V1
class DiscussionsController < ApplicationController
respond_to :json
def index
respond_with Discussion.all
end
def show
respond_with Discussion.find(params[:id])
end
def create
@discussion = Discussion.new(discussion_params)
@discussion.save
render json: @discussion, status: :created
end
def update
respond_with Discussion.update(params[:id], params[:discussion])
end
def destroy
@discussion = Discussion.where(id: params[:id]).first
if @discussion.destroy
head(:ok)
else
head(:unprocessable_entity)
end
end
private
def discussion_params
params.require(:discussion).permit(:title, :user_id, :content, :channel_id, :host_stance, :live, :archive, :private, :tag1, :tag2, :tag3, :tag4, :opponent_stance, :against, :competitive )
end
end
end
end
/config/routes.rb
namespace :api, defaults: {format: 'json'} do
namespace :v1 do
resources :discussions
resources :users
resources :sessions, only: [:create, :destroy]
end
end
/controllers/api_controller.rb
class ApiController < ApplicationController
skip_before_action :verify_authenticity_token
end
解决方案
推荐阅读
- haskell - 伊德里斯有 MaybeT 吗?
- php - for 循环上的 DateTime->modify('+1 day') 更改另一个变量
- kendo-ui - 在剑道 ui 网格中获取 id
- amazon-web-services - AWS ALB 是否支持反向代理和发布重定向?
- javascript - 在新选项卡中的组件之间传递数据
- javascript - 如何直接从我的计算机自动发送 http 请求
- php - 当页面加载/刷新时,我的 PHP 表单正在发送空白条目
- powershell - 如何使用运行 sudo 命令的 Powershell 远程进入 Centos 机器?
- vim - 如何在vim中组织列?
- css - Squarespace 中的中心字体弹出按钮