0

私はこの 2 つのモデル (echanges と echange_answers) を関連付けています:

has_many / belongs_to

#Model Echange
class Echange < ActiveRecord::Base
  attr_accessible :content, :title
  validates_presence_of :title, :content, :section_id
  validates :section_id, numericality: { only_integer: true }
  validates :title, length: { :minimum => 3 }
  validates :content, length: { :minimum => 3 }

  belongs_to :section
  belongs_to :user
  has_many :echange_answers
end

#Model EchangeAnswer
class EchangeAnswer < ActiveRecord::Base
  attr_accessible :content

  validates_presence_of :content
  validates :content, length: { :minimum => 3 }

  belongs_to :user
  belongs_to :echange
end

そして、これが私がアクティブな管理者で得たものです:作成されたすべての「交換」のリスト

交換リスト

そして、これがechangeの1つのショーです。このechangeとbelongs_to関係にあるすべてのechange_answerをページに出力します。 交換のページを表示

そのテーブルの各 echange_answer に削除/編集アクションを設定し、管理者が新しい echange_answer を追加できるようにしたいと考えています。新しい active_admin:resource を作成して「インデックス」ページを削除するか、activeadmin で交換ページをカスタマイズするのが最善の方法ではないかどうか疑問に思っています。カスタムが最善の方法である場合、どうすればそれを行うことができますか?

4

1 に答える 1

2

あなたはすでに ActiveAdmin を持っているので、echange_answer のリソースを作成し、ActiveAdmin にすべてのビューとアクションを処理させることで、それを使用します。ActiveAdmin echange_answers コントローラーで、以下の行があることを確認してください。そうすれば、不要なコントローラー アクションについて心配する必要はありません。

  actions :only => [:create, :edit, :destroy]   
于 2013-02-25T23:53:33.087 に答える