【问题标题】:Getting json data from rails method从 rails 方法获取 json 数据
【发布时间】:2014-09-26 06:41:25
【问题描述】:

我认为我在这里遗漏了一些愚蠢的东西,但无法弄清楚并且已经尝试了一个多小时。所以不要浪费时间..

我想使用 jsonUsers 控制器中获取index 操作。
例如localhost:3000/users.json 现在给我数据..

[{"id":17,"url":"http://localhost:3000/users/17.json"},{"id":16,"url":"http://localhost:3000/users/16.json"}]

但我在 User 表中有其他属性,例如 first_namelast_name 等。我想从 json 中使用。

我应该如何修改我现有的方法以获得所需的详细信息。

  # GET /users
  # GET /users.json
  def index
   @users = User.all
  end


  private
    # Use callbacks to share common setup or constraints between actions.
    def set_user
      @user = User.find(params[:id])
    end

    # Never trust parameters from the scary internet, only allow the white list through.
    def user_params
      params.require(:user).permit(:avatar, :first_name, :last_name)
    end

【问题讨论】:

  • 请向我们展示您的index 操作视图。很可能您没有在此处添加额外的参数。

标签: ruby-on-rails ruby json ruby-on-rails-4


【解决方案1】:

将您的索引方法更改为:

def index
 @users = User.all
 render :json => @users
end

这将显示localhost:3000/users上的json

或者,如果您希望在 localhost:3000/users.json 上明确显示它

使用respond_to,如下所示:

def index 
  @users = User.all
  respond_to do |format|
     format.json { render :json => @users}
  end
end

【讨论】:

    【解决方案2】:

    我想你只需要打开app/views/users/index.jbuilder 并在那里添加你想要的属性。

    【讨论】:

    • gotit ..simple..我什至意识到到目前为止还存在一个名为 index.json.jbuilder 的文件
    猜你喜欢
    • 1970-01-01
    • 2013-11-18
    • 2011-08-21
    • 2017-07-22
    • 1970-01-01
    • 1970-01-01
    • 2019-02-21
    • 2014-05-28
    • 1970-01-01
    相关资源
    最近更新 更多