O que está causando esse erro do ActiveRecord :: ReadOnlyRecord?

Isso segueist pergunta anterior, que foi respondida. Na verdade, descobri que era possível remover uma associação dessa consulta. Agora, a consulta de trabalho é

start_cards = DeckCard.find :all, :joins => [:card], :conditions => ["deck_cards.deck_id = ? and cards.start_card = ?", @game.deck.id, true]  

Isso parece funcionar. No entanto, quando tento mover esses DeckCards para outra associação, recebo o erro ActiveRecord :: ReadOnlyRecord.

Aqui está o código

for player in @game.players 
  player.tableau = Tableau.new
  start_card = start_cards.pop 
  start_card.draw_pile = false
  player.tableau.deck_cards << start_card  # the error occurs on this line
end

e os modelos relevantes (o quadro são as cartas dos jogadores na mesa)

class Player < ActiveRecord::Base
  belongs_to :game
  belongs_to :user
  has_one :hand
  has_one :tableau
end

class Tableau < ActiveRecord::Base
  belongs_to :player
  has_many :deck_cards
end  

class DeckCard < ActiveRecord::Base
  belongs_to :card
  belongs_to :deck  
end

Estou realizando uma ação semelhante logo após esse código, adicionandoDeckCards para a mão do jogador, e esse código está funcionando bem. Gostaria de saber se eu precisavabelongs_to :tableau no modelo DeckCard, mas funciona bem para adicionar à mão do jogador. Eu tenho umtableau_id ehand_id colunas na tabela DeckCar

Procurei o ReadOnlyRecord na API do Rails e isso não diz muito além da descriçã

questionAnswers(6)

yourAnswerToTheQuestion