【问题标题】:Active Admin undefined methodgenerate_association_input_name活动管理员未定义方法generate_association_input_name
【发布时间】:2011-11-24 10:18:33
【问题描述】:

我在 Rails 上使用这个 active_admin。我有一个模型:Page。但后来我进行了一些迁移。当我回到活动管理员的登录面板时,每当我单击顶部导航栏上的“页面”按钮时,我都会收到此错误:

Admin/pages#index 中的 NoMethodError

显示 /home/username/.rvm/gems/ruby-1.9.2-p290/gems/activeadmin-0.3.1/app/views/active_admin/resource/index.html.arb 其中第 1 行提出:

用于#的未定义方法`generate_association_input_name' 提取的源代码(第 1 行附近):

1:渲染renderer_for(:index)

我创建的另一个模型运行良好。我不知道我做了什么来破坏 Active Admin 上的页面模型。

我将尝试重新生成活动管理员。

【问题讨论】:

  • 我查看了日志并收到以下警告:ActiveAdmin::Devise::SessionsController#new 作为 HTML 弃用警告处理:Formtastic::SemanticFormBuilder 已被弃用,取而代之的是 Formtastic::FormBuilder。 (从 /home/username/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/benchmark.rb:310 实时调用)
  • 我最终将 formtastic 降级到 1.2.4.beta github.com/justinfrench/formtastic/issues/577
  • 您应该降级到 1.2.4 - 而不是 1.2.4.beta。尽管列表中的 beta 标记比非 beta 标记高,但它实际上是一棵较老的树

标签: ruby-on-rails ruby activeadmin


【解决方案1】:

问题在于 Formtastic(它是一个 Active Admin 依赖项)刚刚更新到版本 2.0.0 4 days ago

以前的 Active Admin 依赖于 Formtastic >= 1.1.0,其中包括 v2。但是 v2 发生了很大的变化,以至于它破坏了 Active Admin。 3 天前 mattvague made an update 向 Active Admin 反映此问题,将 Active Admin 绑定到 Formtastic

因此,如果您不介意升级 Active Admin,您可以通过升级到包含此修复的 Active Admin 0.3.2 来解决此问题:

gem 'activeadmin', '~> 0.3.2'

或者,您可以强制 Active Admin 使用旧版本的 Formtastic,方法是手动将其添加到您的 Gemfile

gem 'formtastic', '1.2.4' # an activeadmin dependency
gem 'activeadmin', '< 0.3.2' # or whatever version below 0.3.2 you depend on

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多