【发布时间】:2013-03-21 12:38:01
【问题描述】:
我正在尝试在 ActiveAdmin 中创建一个collection_action,它允许我导入一个 CSV 文件并从中生成订阅者。我希望能够单击action_item 链接并转到我输入 CSV 文件的表单,然后对其进行一些处理。
这是我目前所拥有的:
ActiveAdmin.register Subscriber do
collection_action :import_csv, :method => :post do
render "import_csv"
end
action_item do
link_to "Import from CSV", import_csv_admin_subscribers_path
end
视图也被创建,此时只是空白。我重启了 rails 服务器,rake routes 输出:
import_csv_admin_subscribers POST /admin/subscribers/import_csv(.:format) admin/subscribers#import_csv
batch_action_admin_subscribers POST /admin/subscribers/batch_action(.:format) admin/subscribers#batch_action
admin_subscribers GET /admin/subscribers(.:format) admin/subscribers#index
POST /admin/subscribers(.:format) admin/subscribers#create
new_admin_subscriber GET /admin/subscribers/new(.:format) admin/subscribers#new
edit_admin_subscriber GET /admin/subscribers/:id/edit(.:format) admin/subscribers#edit
admin_subscriber GET /admin/subscribers/:id(.:format) admin/subscribers#show
PUT /admin/subscribers/:id(.:format) admin/subscribers#update
DELETE /admin/subscribers/:id(.:format) admin/subscribers#destroy
但是,当我单击操作项时,我收到错误 Couldn't find Subscriber with id=import_csv
如果我将方法更改为:get,它会很好地呈现视图。我假设问题是我使用:post?如果您使用该方法调用控制器操作,是否无法呈现视图?
edit 好的,是的,用post 渲染视图没有意义,但是why does the ActiveAdmin doc 建议您以这种方式对CSV 导入执行操作?不生成表格你怎么# Do some CSV importing work here...?
【问题讨论】:
标签: activeadmin