0

新しいコメント モデルは Web サイトでうまく機能しますが、管理者ビューに移動して「ガイドライン」(別のモデル) を表示しようとすると、次のエラー メッセージが表示されるため、activeadmin に問題があります。

未定義のメソッド「コメント」

私のモデルcomment.rb:

belongs_to :guideline
belongs_to :commenter, class_name: 'User'
attr_accessible :body, :commenter_id

私のモデルのガイドライン.rb:

attr_accessible :content, :hospital, :title, :user_id, :guideline_id, :specialty, :updated_by, :current_user, :subtitle, :slug, :activities, :comment, :visible
belongs_to :user
has_many :favourite_guidelines
has_many :comments, :dependent => :destroy

admin/guidelines.rb:

index do                              
  column :comment     
  default_actions                   
end
4

1 に答える 1

0

.commentsガイドラインモデルにはhas_manyコメントがあり、したがってメソッドはありますが。がないため、未定義のメソッドエラーが発生します.comment。ガイドラインにあるコメントの数を表示しようとしている場合は、これを行うことができます。

column "Comments" do |guideline|
  guideline.comments.count
end

リストされている実際のコメントをすべて表示したい場合は、テキストを保持するコメントオブジェクトの列をすべて収集し、コンマや改行などで結合できます。

column "Comments" do |guideline|
  guideline.comments.collect(&:text_form_of_comment).join(",")
end

ActiveAdminインデックステーブルをカスタマイズする方法の詳細については、こちらをご覧ください。

于 2013-03-09T14:15:47.663 に答える