ActiveAdmin设置资源,但不会通过自定义表单创建新项目

时间:2014-08-19 03:03:45

标签: ruby-on-rails ruby ruby-on-rails-3 activeadmin

我在我的rails应用程序版本3.2中安装了ActiveAdmin,我将BlogPost模型设置得非常好,这样我就可以毫无问题地查看索引。

但是当我创建一个像

这样的新博客时
ActiveAdmin.register BlogPost do


  index do
    column :title do |post|
      link_to post.title, blog_post_path(post)
    end
    column :body
    column :created_at
    column :image_url
    default_actions
  end

  form do |f|
    f.inputs "Blog Post" do
      f.input :title
      f.input :body, as: :html_editor
      f.input :image_url
    end
    f.actions
  end

end

它什么都不做,实际上并没有创建新帖子,也没有抛出错误。它只是刷新页面。我也使用默认资源,因此我的blog_post_controller继承自ApplicationController而不是InheritedResources。

问题的原因是什么,或者我需要为activeadmin配置什么以通过我的blog_post_controller上的帖子点击创建路由?

2 个答案:

答案 0 :(得分:0)

原来我正在验证我在帖子请求中没有发送的另一个字段,然后是静默失败。

答案 1 :(得分:0)

我刚遇到同样的问题,问题是我正在验证子关联中是否存在外键...但是父对象尚未创建,因此没有ID可用于验证。

通过将:inverse_of => :parent_model_name添加到父模型上的关联并将子模型的验证更新为validates :parent_model_name, :presence => true而不是validates :parent_object_id来解决此问题

这是一个很好的资源 - https://robots.thoughtbot.com/accepts-nested-attributes-for-with-has-many-through