Ruby on rails 3 主动管理Gem模型关联。

Ruby on rails 3 主动管理Gem模型关联。,ruby-on-rails-3,associations,model-associations,activeadmin,Ruby On Rails 3,Associations,Model Associations,Activeadmin,我刚开始使用主动管理Gem。我有一点小问题,我想知道是否有人有解决办法 我有两种型号 狗 育种家 使用我的应用程序,我希望能够 查找狗的品种,然后在查看狗的同时列出饲养者名单 当我访问饲养者(展示页面)时,我希望能够看到他们的狗品种 我已经创建了模型,但是我不知道如何完成任务,但是你已经通过创建一个连接表来进行了尝试 繁殖犬加入表格 class BreedersDogs < ActiveRecord::Migration def self.up create_table 'br

我刚开始使用主动管理Gem。我有一点小问题,我想知道是否有人有解决办法

我有两种型号


育种家

使用我的应用程序,我希望能够

  • 查找狗的品种,然后在查看狗的同时列出饲养者名单
  • 当我访问饲养者(展示页面)时,我希望能够看到他们的狗品种
  • 我已经创建了模型,但是我不知道如何完成任务,但是你已经通过创建一个连接表来进行了尝试

    繁殖犬加入表格

    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
    
    class-BreedersDogsfalse do | t|
    t、 整数:繁殖者id
    t、 整数:dog_id
    结束
    结束
    def自动关闭
    投递台:饲养犬
    结束
    结束
    
    狗模型

    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
    
    classdog:繁殖者\u狗
    结束
    
    繁殖者模型

    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
    
    class-Breeder:饲养者\u狗
    结束
    
    我试过了,但情况不一样

    我正在苦苦思索如何在这两个模型之间建立这种联系。先谢谢你

    # 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
    

    我想这就是你需要的。请记住为您的设置调整字段名称等。:)

    只是为了理解你的问题:在你的狗展页面上,你需要列出相关的繁殖者,在你的繁殖者页面上,你需要列出相关的狗?最重要的是,在这两个展示页面上,您需要一种能够添加新关联的方法吗?这就是我正在尝试的。我是否仍然保留:join\u table=>:breeders\u dogs?我是否在这两个迁移中都添加了一个新列?我想我把自己弄糊涂了。我似乎没有一个繁育者列表,我只有一个文本字段。我希望能够从下拉列表中选择繁殖者(意味着与两个模型的关联)Hmmm,如果关联构建正确,则应显示为多选框。你准确地复制了饲养员的表格代码了吗?好的,我的模型就是我上面的模型。拥有并且属于许多:狗,:加入\u表=>:饲养者\u狗。这会将信息保存在联接表中吗?现在起作用了。。。。。但不是在下拉列表中。哇,在一个文本框里。我想我会有100多个繁殖者。选择他们将是一个挑战。你认为这样做有可能吗?