ruby-on-rails - Rails 复杂路由
问题描述
如何在我的控制器中设置路由和端点,以便对 /api/users?phone_number= 的 GET 请求显示提供其电话号码的用户的详细信息。
用户控制器
def index
@users = User.all
render json: @users
end
def show
@user = User.find(params[:id])
render json: @user
end
路线.rb
namespace :api do
resources :users, only: [:index, :show]
end
解决方案
无需调整路线,只需控制器:
def index
if params[:phone_number]
@users = User.where(phone_number: params[:phone_number])
else
@users = User.all
end
render json: @users
end
推荐阅读
- angular - 从数据库延迟加载 Angular 组件
- jquery - 如何将语法 .live() 转换为 .on() - jquery
- python - 使用 psycopg2 与 postgresql 的连接可以保持 24 小时以上吗?
- database - 如何在 Sequelize 查询中使用不包含
- nix - 查询一个nix程序的“name”属性
- conditional-statements - 在代码复杂性中使用 if else 和 if else if else(深度条件)有什么区别?
- html - SCSS Mixin 无法编译
- python - 如何在熊猫中查找某些列变量的行
- javascript - 允许在页面加载时播放音频
- python - 将输出写入不同的 csv 文件列