将参数传递给Active Admin中的新操作

我有两个相关的模型,Bunny has_many BunnyData(属于Bunny)。 从特定Bunny的显示页面(在Active Admin中),我想创建一个链接来创建相关的BunnyData。 我尝试了几种不同的方法,没有成功,我正在尝试这样做:

sidebar :data, :only => :show do link_to 'New Data', new_admin_bunny_datum(:bunny_id => bunny.id) end 

生成的链接最终会像:

.../admin/bunny_data/new?bunny_id=5

但是当你转到那个页面时,Bunny的下拉列表被设置为空白默认值,而不是显示ID为5的Bunny名称。

提前致谢。

Rails命名空间将字段表示为数据模型,在本例中为BunnyData。 对于要预填充的表单,提供的任何字段还必须包含命名空间。 举个例子:

 ActiveAdmin.register Post do form do |f| f.inputs "Post Details" do f.input :user f.input :title f.input :content end f.actions end end 

可以通过将哈希传递给路径助手来预填充字段。

 link_to 'New Post', new_admin_post_path(:post => { :user_id => user.id }) 

这将生成以下路径并设置表单字段。

/admin/posts/new?post[user_id]=5

在BunnyData的情况下,由于单数和复数forms的数据,它可能略有不同。 但是可以通过检查生成的HTML来查找输入的name属性来validation。