【发布时间】:2016-07-26 22:46:42
【问题描述】:
在 Rails 中(特别是在 ActiveAdmin 中)带有作为第二个参数传递的数组的 link_to 帮助器有什么作用?这方面的文档在哪里?
我有这个代码:
index pagination_total: false do
column :name, :sortable => :first_name do |user|
link_to user.full_name, [:admin, user]
end
那有什么作用? [:admin, user] 在这里做什么?
这里有一个令人困惑的事情是我的 ActiveAdmin 面板被定义为:
ActiveAdmin.register Promotions::User, as: "User" do
所以链接实际上是像这样在模块前面出现的:
admin_promotions_users_path 我不想要。这会导致错误,因为as: 会覆盖 ActiveAdmin path_helper。我想要的是:
admin_users_path。
简而言之,我认为这里的错误是我不知道 link_helper 在传递带有符号对象的数组时扩展为什么。
【问题讨论】:
-
正如您所观察到的
link_to user.full_name, [:admin, user]=> admin_promotions_users_path(我假设这是目前在促销控制器上)。我想你想要的是link_to user.full_name, admin_users_path -
为什么不变成admin_user_path?促销活动如何进入那里? ActiveAdmin 是否劫持了用户对象?