to_json не работает, потому что отражения неправильные - PullRequest
0 голосов
/ 27 сентября 2010

У меня есть класс с именем Foo , который выглядит следующим образом:

class Foo < ActiveRecord::Base 
  belongs_to othermodel 
end 

и класс Бар , который выглядит следующим образом:

class Bar  < Foo 
   belongs_to thirdmodel
end 

Когда я пытаюсь сериализовать бар с помощью: bar.first.to_json (: include =>: othermodel), в производственном режиме происходит сбой. Странно это работает в среда разработки. Я покопался и обнаружил, что bar.first.class.reflections.keys включает только «третья модель», а не «Другая модель» в производственном режиме.

Я не могу этого объяснить, в rails 2 и в среде разработки это Работает префект.

Ошибка:

NoMethodError: undefined method `macro' for nil:NilClass
   from ~/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.0/lib/active_record/serialization.rb:41:in `block in serializable_add_includes'

1 Ответ

0 голосов
/ 12 октября 2010

Проблема была в мыслящем сфинксе. Убрал его и заменил собственным решением, и теперь оно работает отлично.

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