子オブジェクトを介して情報を更新していますが、親オブジェクトにデータを保存できないようです。状況は次のとおりです。
class NewsPage < Content
content_fields :body
コンテンツには列呼び出しの本文があるため、次のようにできます。
newsPage1.body
page2 の本文を page1 にコピーしたい:
newsPage1.body << newsPage2.body
newsPage1.body を印刷すると、両方の本文がそこに表示されます..しかし、リクエストが完了すると、newsPage1.body は元の状態にリセットされます..それが発生したときにコンテンツのテーブルにアクセスしていないためだと思います.. . では、newsPage1 のコンテンツの本文をコンテンツのページ列に保存するにはどうすればよいでしょうか? 私が間違っている可能性があり、これは他の何かが原因である可能性があります..この男と同じ問題ですが、彼は答えを得ませんでした: @article.save は更新されたものではなく古いコンテンツを保存しているようです
以前にリンクした投稿からコードを追加するために編集しました:
def my_method(other_id)
self.rating << NewsPage.find(other_id).rating
self.body << NewsPage.find(other_id).body
return self
end
私のコントローラーでは、これは次のように定義されて呼び出されます。
def copy
@newsPage = NewsPage.find(params[:id])
@copiedNewsPage = @newsPage.my_method(params[other_id])
redirect_to :action => 'main'
end
レーティングは正常にコピーされましたが、本文はコピーされませんでした。手がかりはありますか?