Rails 3: проблема с as_json в сочетании с include - PullRequest
1 голос
/ 26 июня 2011

У меня есть две модели в отношении 1: n.Оба выпускаются только в формате JSON.Поэтому я определил as_json в обеих моделях:

class Foo < ActiveRecord::Base
  has_many :foos, dependent: :destroy
  def as_json options={}
    super except: [:created_at, :updated_at, :id, :user_id], include: options[:include]
  end
end


class Bar < ActiveRecord::Base
  belongs_to :foo
  def as_json options={}
    super except: [:id, :foo_id, :created_at, :updated_at], include: options[:include]
  end
end

Теперь я запрашиваю foo и bar независимо, а as_json работает как исключение.Но в случае, если я запрашиваю bar с включенным foo, ответ содержит foo с атрибутами, которых там быть не должно.На самом деле as_json даже не вызывается.

Кажется, это стандартное поведение.Но как я могу отключить / достичь своей цели - всегда использовать as_json независимо, используется ли включение?1009 * Спасибо заранее.Felix

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...