Сериализованный объект отлично работает на моем компьютере разработчика, Heroku выдает «TypeError (не может сбросить анонимный класс Class)» - PullRequest
4 голосов
/ 03 февраля 2012

Я могу неправильно использовать сериализованные объекты, поэтому заранее извиняюсь.Для канала активности я использую сериализованный столбец метаданных, чтобы упростить вызов базы данных.Например, для канала активности я просто добавляю объекты Activity с соответствующим user_id.Я добавляю в объект line_item, как показано здесь:

class Activity < ActiveRecord::Base
  serialize :data

  activity = Activity.new(:user_id        => user_id...)

  if activity.source_type == "LineItem"
    line_item = LineItem.find(activity.source_id)
    activity.update_attributes(:data => line_item)
  end

Затем я вызываю его через некоторые части, где «book» - это бит метаданных:

= link_to image_tag(item.data.book.image_url),
    book_path(item.data.book.id)

Это работаетотлично на моей коробке, но Heroku выдает мне «TypeError (не может сбросить анонимный класс Class)».Что дает?

1 Ответ

1 голос
/ 20 июня 2012

Я думаю, вам нужно явно сказать, к какому типу вы сериализуетесьТаким образом, синтаксис будет:

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