2

ActiveAdminGemを使い始めたばかりです。私は少し問題があり、誰かが解決策を持っているかどうか疑問に思っていました。

私は2つのモデルを持っています

犬の
ブリーダー

私のアプリケーションを使用して、私はできるようになりたいです

  1. 犬の品種を見つけて、犬を見ながらブリーダーのリストを表示します。
  2. ブリーダーズ(ショーページ)に行くと、彼らが飼っている犬の品種を見ることができます。

モデルを作成しましたが、タスクを実行する方法がわかりません。ただし、結合テーブルを作成して試行しました。

Breeders_dogsがテーブルに参加

class BreedersDogs < ActiveRecord::Migration
   def self.up
   create_table 'breeders_dogs', :id => false do |t|
    t.integer :breeder_id
    t.integer :dog_id
  end
  end


   def self.down
  drop_table :breeders_dogs
  end

end

犬のモデル

class Dog < ActiveRecord::Base
   has_and_belongs_to_many :breeders, :join_table => :breeders_dogs

end

ブリーダーモデル

class Breeder < ActiveRecord::Base
   has_and_belongs_to_many :dogs,  :join_table => :breeders_dogs
end

私はこれを試しましたが、状況は同じではありません。Rails GemActiveAdminとアソシエーションの使用

私は2つのモデルの間にこの関連付けを作成する方法に苦労しています。前もって感謝します。

4

1 に答える 1

4
# app/admin/dogs.rb


    show :title => [whatever field you want your title to be e.g. :dog_name] do

        panel "Dog Info" do
          attributes_table_for dog do
                row("..label..") { dog.fieldname }
                ...
              end
        end

        panel "List of Breeders" do
            table_for dog.breeders do |t|
                t.column("Breeder List") { |breeder| breeder.name }
            end
        end
    end


# Form Fields

form do |f|

    f.inputs "Dog Info" do
      f.input :inputname
      ...
    end

    f.inputs "Breeders" do
      f.input :breeders
    end
    f.buttons
end

これが必要になると思います。セットアップのフィールド名などを調整することを忘れないでください。:)

于 2011-10-07T09:08:23.733 に答える