【发布时间】:2017-04-06 01:52:04
【问题描述】:
我想问一下如何自定义活动管理员。 我正在制作自己的博客并使用活动管理 gem 创建管理页面。 这通过article_tag表与article和tag有多对多的关系。
我想要做的是从文章面板添加标签,我能够在文章面板中显示标签视图,但它不能正常工作。(保存一次后我无法更新或删除标签)
http://localhost:3000/admin/articles/new
我用这样的文章和标签模型建立了多对多关系。
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
标签.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
但是在我保存带有标签的文章后,我无法更新标签或删除标签... 有谁知道如何解决这个问题?
【问题讨论】:
-
请不要在标题中使用“【Ruby on Rails】”之类的伪标签。
标签: ruby-on-rails ruby ruby-on-rails-4 rubygems