Tag: json

在Rails中使用ajax渲染查询

我需要有以下问题的帮助或指导。 每次在搜索表单中更改时,我都使用ajax从数据库重新加载动态查询。 目的是根据搜索表单中选择的参数动态加载N个寄存器。 我有这个代码,允许我对数据库进行查询并在索引中打印结果。 代码正在运行,最后每次迭代都会在查询结果中为每个注册表打印一个“square”()。 控制器: def clientsjson @search = Client.search(params[:q]) @clients = @search.result respond_to do |format| format.json { render :json => @clients } end end Js文件 $(document).ready(function() { $( “.searchupdate” ).change(function() { $.getJSON(“/client/clientsjson?”+$(‘#client_search’).serialize(), function (data) { var $ul = $(”); $ul.append(data.map(function(data) { var $ini= ” var $inicio=” var $titulo=”+data[‘name’]+” var $titulo2=’City, Country’ var $titulo3=’Idioma:’ […]

Rails日期与JSON – 第2部分

我成功地使用鸭子打孔机来重新格式化日期时间返回的日期,基于对其他人的问题给出的有用响应: 用json跟踪日期 我现在正在尝试为日期对象(而不是日期时间)做一个非常类似的事情,所以我修改了补丁如下: class ActiveSupport::Date # I’ve changed TimeWithZone to Date def as_json(options = {}) strftime(‘%Y’) end end …但它不起作用(日期格式与默认的2011-02-03相同)。 关于如何获得这一点的任何提示都非常受欢迎。

控制器中的索引方法不适用于活动模型序列化程序

我想发送一个包含我的bookmarks资源集合的json响应。 出于某种原因,主动模型序列化器不会按预期操纵我的json。 它只呈现默认响应。 这是app/serializers/bookmarks_serializer.rb BookmarksSerializer序列化app/serializers/bookmarks_serializer.rb class BookmarksSerializer < ActiveModel::Serializer attributes :id, :url, :title end 和我的Api::UsersController控制器方法,它在顶部有一个respond_to :jsonfilter def index user = User.find_by(username: params[:username]) @bookmarks = user.bookmarks render json: @bookmarks.to_json end 而不是只获取:id,:title和:url,我得到完整的默认哈希 我究竟做错了什么? 我使用rails 4.1.5和active_model_serializers gem的github版本。 gem ‘active_model_serializers’, github: ‘rails-api/active_model_serializers’ 仅供参考:我在同一个控制器中有一个show方法,它的序列化器可以很好地获取单个资源。 它只是索引方法中不呈现的集合。 请帮忙

想要在to_xml和to_json中保持一致的行为

所以,我正在编写一项服务,在轨道上,我对人们的联系方式非常漠不关心。 我在http层进行身份validation,所以如果人们想要xml或者json,我会更少关心。 我正在重写to_json和to_xml,但我对两者使用相同的参数。 ‘包括这个’,’不包括’,等等。 其他人如何做到这一点来检查行为是否相同? 也许只需设置一组参数并在两种方法中使用它们? 或者可能有方法来validationJSON.from_xml(myobject.to_xml)== myobject.to_json? 如果我能帮忙的话,我不想两次做我的所有测试。

存储访问器问题:无法在Rails 4中的mysql数据库中读取旧的已存储的json对象序列化(哈希)值

我正在从Rails 3.2.8升级我的应用程序到Rails 4.2.4。 对于序列化的表’社论’,我有一个’extras’属性 store :extras, accessors: [:attr1, :attr2, :attr3], coder: JSON #The way it is stored in **Rails 3** is — :attr1: value :attr2: value :attr3: value #The way it is stored in **Rails 4** is {“attr1″:”value”, “attr2″:”value”, “attr3″:”value”} 当我获取我的应用程序在rails 3中时创建的旧记录的问题,它给我带来了错误 JSON::ParserError: 795: unexpected token at ‘— 但是当我创建新记录时,它正常工作。 还没有任何线索,如何让它在Rails 4中运行

Rails:从服务器返回条带响应的JSON

我有多个客户端依赖我的服务器处理Stripe收费请求。 当处理费用时,我想向我的客户发回JSON,说明费用是否已成功创建,如果不是,则说明原因。 我的服务器可以在这里查看。 我的控制器的代码如下: class ChargesController params[:stripeEmail], :source => params[:stripeToken] ) charge = Stripe::Charge.create( :customer => customer.id, :amount => @amount, :description => ‘Rails Stripe customer’, :currency => ‘usd’ ) #*WHAT I TRIED DOING THAT DIDN’T WORK* # respond_to do |format| # msg = { :status => “ok”, :message => “Success!”} # format.json { render :json […]

Swift TRON内容类型HeaderBuilder语法

我正在使用TRON来访问基于ruby on rails的api,我觉得我的问题是因为标题没有正确的信息。 我一直在使用TRON的HeaderBuilder语法,但却无法真正看到语法需要的内容。 我的rails错误是在尝试从特定控制器操作获取数据时 [active_model_serializers] Rendered ActiveModel::Serializer::Null with Hash (0.25ms) Filter chain halted as :ensure_valid_accept_media_type rendered or redirected Completed 406 Not Acceptable in 61ms (Views: 30.0ms | ActiveRecord: 2.7ms | Solr: 0.0ms) 在xcode中,我使用rest类型控制器来获取json public class DataController { static let tron = TRON(baseURL: GlobalVariables().baseURL) class Fetched: JSONDecodable { let response: JSON required init(json: JSON) throws […]

Rails中的无表格模型JSON序列化

我有无表格模型(就像在#219 railscast中显示的那样): class MyModel include ActiveModel::Conversion extend ActiveModel::Naming attr_accessor :attr1, :attr2, :attr3, :attr4 private def initialize(attr1 = nil) self.attr1 = attr1 end def persisted? false end end 然后我试图在控制器中呈现JSON: @my_model = MyModel.new render json: @my_model.to_json(only: [:attr1, :attr2]) 但它使用模型的所有属性呈现JSON。 我试过补充一下 include ActiveModel::Serialization 但它没有改变渲染的JSON。 如何只使用无表格模型的必要属性渲染JSON? 我正在使用Rails 3.2.3 更新 多谢你们。 看来你几乎都是对的。 我结合你的解决方案得到了这个: 模型: include ActiveModel::Serialization … def to_hash { […]

如何在Rails中使用API​​返回嵌套注释

has_many :comments都有has_many :comments关联 我有以下方法来归还我的车: class Api::V1::CarsController recent) end end 我最近获得了以下汽车: curl -X GET http://cars.dev/api/v1/cars/recent -d “token=zzxWkB3SzDP3U1wDsJbY” -d “how_recent=20” 我希望得到这样的回应: “recent_with_comments”:{“recent”:[{“type”:”ferrari”,”price”:null,”user_id”:78,”username”:null,”comments”:[{“id”:1, “comment”: “some text”},{“id”:2, “comment”: “some text 2”}]}]

Rails 5:NoMethod错误 – 未定义的方法Paginate

我有一个基于Rails 5的JSON API。我有一个方法可以为一个特定的公司提供所有产品的列表,我想分页,以便不会立即显示所有数据。 为此,我遇到了两个gem,即will_paginate和api-pagination 。 运行bundle install并重新启动服务器后,我仍然收到以下错误: NoMethodError (undefined method `paginate’ for #) 产品控制器: require ‘roo’ class Api::V1::ProductsController comp_id, :category_id => cat_id) else product = Product.where(:company_id => comp_id) end paginate json: product, status: 200 else render json: { errors: “Company ID is NULL” }, status: 422 end end end Gemfile.rb source ‘https://rubygems.org’ git_source(:github) do |repo_name| […]