2017-04-06 8 views
0

アクティブな管理者をカスタマイズする方法を尋ねます。 私は自分のブログを作っており、アクティブな管理宝石を使って管理ページを作成しています。 これはarticle_tagテーブルを介してarticleとtagとの多対多の関係を持っています。アクティブな管理者を使用しているときに更新または削除できない

記事パネルからタグを追加して、タグパネルを記事パネルに表示することはできましたが、うまくいきません(保存後にタグを更新または削除できません)

image

http://localhost:3000/admin/articles/new

は、私はこのような記事とTagモデルと多くの関係に多くを作りました。

article.rb

class Article < ActiveRecord::Base 
    has_many :article_tags 
    has_many :tags, through: :article_tags 
accepts_nested_attributes_for :article_tags, :allow_destroy => true 
end 

tag.rb

class Tag < ActiveRecord::Base 
    has_many :article_tags 
    has_many :articles, through: :article_tags 
end 

article_tag.rb

class ArticleTag < ActiveRecord::Base 
    belongs_to :article 
    belongs_to :tag 
end 

そして、私はこのように、アクティブな管理をカスタマイズしました。

ActiveAdmin.register Article do 

permit_params :title, :description, :url, :image_url, :media, article_tags_attributes: [:article_id, :tag_id, :name, :_destroy, :_edit] 

form do |f| 
    # f.semantic_errors *f.object.errors.keys 
     f.inputs "Admin Details" do 
     f.input :title 
     f.input :description 
     f.input :url 
     f.input :image_url 
     f.input :media 
     f.input :publish 
    end 
    f.inputs "Articles" do 
     f.has_many :article_tags do |t| 
     t.input :tag 
     end 
    end 
    f.actions 
    end 
end 

しかし、私は、私は、タグの更新またはタグを削除can`tいったんタグ付きの記事を保存した後... は、誰もがこの問題を解決する方法を知っていますか?

+0

タイトルに「【Ruby on Rails】」のような疑似タグを使用しないでください。 –

答えて

0

article_tagオブジェクトの属性:idを許可し忘れました。既存のネストされたオブジェクトを更新/削除するときに渡されます。

ActiveAdmin.register Article do 
    permit_params :title, :description, :url, :image_url, :media, article_tags_attributes: [:id, :article_id, :tag_id, :name, :_destroy, :_edit] 
    ... 
end 
+0

私はこの問題を解決できました。ありがとう!! – Dan

関連する問題