首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Acts-As_Taggable & Administrate Gem -未初始化的常量ActsAsTaggableOn::TagDashboard

Acts-As_Taggable & Administrate Gem -未初始化的常量ActsAsTaggableOn::TagDashboard
EN

Stack Overflow用户
提问于 2016-09-01 15:08:47
回答 1查看 601关注 0票数 1

我得到了这个错误: ActionView::Template::Error:未初始化的常量ActsAsTaggableOn::TagDashboard,您的意思是?PlanDashboard GoalDashboard TaskDashboard

我真的希望它是UserDashboard,但不确定我需要在下面添加什么或更改什么。有什么想法吗?非常感谢。

因此,我建立了我的管理宝石,我可以显示我的模型(包括用户)。但是当我点击编辑时,我会得到上面的错误。

我正在使用以下相关的宝石

代码语言:javascript
复制
ruby "2.3.1"

gem "rails", "5.0.0.1"

gem "pg", "0.18.4" # postgresql database
gem "acts-as-taggable-on", git: "https://github.com/mbleigh/acts-as-taggable-on" # tagging
gem "administrate", git: "https://github.com/heyogrady/administrate", branch: "rails5"

下面是我的代码:

代码语言:javascript
复制
enter code here`require "administrate/base_dashboard"

class UserDashboard < Administrate::BaseDashboard

  # ATTRIBUTE_TYPES
  # a hash that describes the type of each of the model's fields.
  #
  # Each different type represents an Administrate::Field object,
  # which determines how the attribute is displayed
  # on pages throughout the dashboard.
  ATTRIBUTE_TYPES = {
    owned_taggings: Field::HasMany.with_options(class_name: "::ActsAsTaggableOn::Tagging"),
    owned_tags: Field::HasMany.with_options(class_name: "::ActsAsTaggableOn::Tag"),
    team_group: Field::BelongsTo,
    lead_groups: Field::HasMany,
...
  }

  # COLLECTION_ATTRIBUTES
  # an array of attributes that will be displayed on the model's index page.
  #
  # By default, it's limited to four items to reduce clutter on index pages.
  # Feel free to add, remove, or rearrange items.
  COLLECTION_ATTRIBUTES = [
    :name,
    :email,
...
  ]

  # SHOW_PAGE_ATTRIBUTES
  # an array of attributes that will be displayed on the model's show page.
  SHOW_PAGE_ATTRIBUTES = ATTRIBUTE_TYPES.keys

  # FORM_ATTRIBUTES
  # an array of attributes that will be displayed
  # on the model's form (`new` and `edit`) pages.
  FORM_ATTRIBUTES = [
    :owned_taggings,
    :owned_tags,
    :team_group,
    :lead_groups,
...
  ]

  # Overwrite this method to customize how users are displayed
  # across all pages of the admin dashboard.
  #
  def display_resource(user)
    user.name
  end

end
EN

回答 1

Stack Overflow用户

发布于 2017-06-15 05:44:01

只需删除TagsATTRIBUTE_TYPES中的行,如下所示:

代码语言:javascript
复制
ATTRIBUTE_TYPES = {
# taggings: Field::HasMany.with_options(class_name: "::ActsAsTaggableOn::Tagging"),
# base_tags: Field::HasMany.with_options(class_name: "::ActsAsTaggableOn::Tag"),
# tag_taggings: Field::HasMany.with_options(class_name: "ActsAsTaggableOn::Tagging"),
# tags: Field::HasMany.with_options(class_name: "ActsAsTaggableOn::Tag"),
# topic_taggings: Field::HasMany.with_options(class_name: "ActsAsTaggableOn::Tagging"),
# topics: Field::HasMany.with_options(class_name: "ActsAsTaggableOn::Tag"),
user: Field::BelongsTo,
tag_list: Field::String,
id: Field::Number,
title: Field::String,
body: Field::Text,

还可以删除TagsCOLLECTION_ATTRIBUTESSHOW_PAGE_ATTRIBUTESFORM_ATTRIBUTES中的行。

如果要显示/编辑模型上的标记,请将这一行添加到ATTRIBUTE_TYPES

tag_list: Field::String,

现在您可以使用:tag_list,COLLECTION_ATTRIBUTESSHOW_PAGE_ATTRIBUTESFORM_ATTRIBUTES中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39275171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档