您好我希望能够更改csv输出的标题。因此,而不是:name =" name"我想将其更改为例如"客户名称"。不重命名变量。我怎么能这样做。
例如。
column "client name", :name
-
此外,我想将cf添加到id的输出中,以便显示例如" 3 cf"而不是3.这样的事情,但工作。
column(:id) + "CF"
- 完整代码。对于订单。
ActiveAdmin.register Order do
scope :not_completed_orders
menu priority: 3
batch_action :manifest do |ids|
redirect_to "/admin/orders.csv?q[id_in][]=" + ids.join("&q[id_in][]=")
end
index do
selectable_column
column :id
column :user
column :name
column :delivery_name
column :complete
column :delivery_address1
column :service
column :insurance
actions
end
csv do
column :created_at
column :name
column :delivery_name
column(:id)
end
permit_params do
permitted = [:email ,:country ,:city ,:postcode, :address_line_2, :address_line_1 ,:user_id, :name, :delivery_name, :company_name, :delivery_address1, :delivery_address2, :delivery_address3, :delivery_city, :delivery_postcode, :delivery_country, :phone, :package_contents, :description_content, :restricted_items, :terms_conditions, :insurance, :contents_value, :cf_reference, :reference_number, :complete]
permitted
end
end
# completed_at
非常感谢任何帮助。谢谢
答案 0 :(得分:2)
使用列参数humanize_name: false
csv force_quotes: true do
column :a_b_c_d, humanize_name: false
end
答案 1 :(得分:1)
在csv块中,您可以像这样定义自己的自定义标题:
column "client name" do |order|
order.name
end
自定义值相同:
column "ID" do |user|
"#{user.id} CF"
end
或者,如果您更喜欢单行,您可以将上面的代码更改为:
column("client name"){ |order| order.name }
类似的代码适用于自定义值。