Как включить отношения habtm во время сериализации - PullRequest
1 голос
/ 08 апреля 2011

В моем приложении rails 3 есть ассоциация has_and_belongs_to_many. Я также использую новый метод response_with для автоматической генерации XML для REST API.

Ассоциация HABTM находится между DataSource и Parameter, а таблица соединения - data_sources_parameters.

Когда я пишу respond_with DataSource.all, :include => parameter, это работает, и я получаю ожидаемый ответ

<data-sources type="array">
<data-source>
<created-at type="datetime">2011-04-05T14:05:22Z</created-at>
<id type="integer">1</id>
<updated-at type="datetime">2011-04-05T14:05:22Z</updated-at>
<url>http://www.yahoo.com/weather</url>
<parameters type="array"/>
</data-source>
</data-sources>

Ответ указывает, что параметры для каждого источника данных будут включены в источник данных. Однако это работает только тогда, когда фактической ассоциации еще не существует, т. Е. Таблица соединения пуста.

В тот момент, когда я фактически создаю связь между двумя записями базы данных, я получаю ошибку "неопределенный метод` type 'для nil: NilClass ", и журнал указывает на приведенную выше строку кода.

Может кто-нибудь помочь мне понять, почему это происходит?

1 Ответ

1 голос
/ 26 апреля 2011
...